自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 Python 办公自动化:Word 文档加密与权限控制实战

了解文档加密与权限控制在编写代码前,我们需要理解 Word 文档保护的两种核心机制:打开加密与编辑限制。打开加密: 这是针对整个文件的限制。它通过 Encrypt 方法直接加密文档,未授权用户在双击打开文件时,会被提示要求输入密码,只有验证通过才能查看内容。这适合合同底稿、财务报表等需要严格保密的文件。编辑限制: 这是针对操作行为的限制。它允许任何人直接打开并阅读文档,但通过 Protect 方法限制了修改权限(如只读、仅允许修订或批注等)。环境准备与库安装。

2026-07-11 14:31:48 266

原创 macOS/Windows 下快速输入日期、时间 _

Control + Option + Command + F 插入详细日期时间。– Control + Option + Command + D 插入日期。Ctrl + Win + Shift + T 插入时间(不含日期)Ctrl + Win + F 插入文件名友好的时间戳(无冒号)osascript …Ctrl + Win + T 插入完整时间戳。date ‘+%Y-%m-%d’:生成当前日期。系统设置 → 键盘 → 键盘快捷键 → 服务。Ctrl + Win + D 插入日期。

2026-07-11 14:31:06 272

原创 高性能服务器的基石:从并发模型到状态机

Nginx:工作进程(Worker Process)模式下,每个worker进程内部实际上是单Reactor(每个worker独立监听同一端口,通过SO_REUSEPORT实现负载均衡),但整体架构是多个worker进程,每个worker内部的Reactor负责accept和I/O,可视为多进程主从Reactor。同时,单Reactor线程可能成为瓶颈。│ 从Reactor 1(线程) │ │ 从Reactor 2(线程) │ │ 从Reactor N(线程) │。

2026-07-10 15:40:58 247

原创 现代 NLP 的位置编码范式

因为不同的距离会被混在同一种旋转节奏中,很容易出现 “不同 token 间:我正好比你多转一个周期,咱们俩是一样的” 这种情况,这就会混淆模型对近距离和远距离的感知。仍然是可学习的,于是模型会主动学习哪些特征适合高频旋转、哪些特征适合低频旋转、如何组织语义空间去适应旋转结构等逻辑,而这就确保了其同时拥有一定的适应能力。高频维度在远距离时旋转了太多圈,两个向量的方向越来越难对齐,于是点积上界自然降低。此外,值得一提的是,在 RoPE 的框架下,两个距离很远的 token 的 QK 点积上界会自然变小。

2026-07-10 15:40:27 216

原创 Windows Python 打包实战:Nuitka 环境踩坑总结与 CI 自动化构建全指南

环境检测(是否依靠 exe 运行)有些功能(如开机自启动)可能需要限制在依靠 exe 运行的情况,相信很多开发者第一反应就信手拈来 sys.executable 侦测:但是!Nuitka 构建之后的 sys.executable 很可能稳定指向 python 解释器的路径,这个方法是不可靠的!正确解法:Nuitka 构建完毕后会注入变量为 True。Pyinstaller 打包是通过在 sys 下设置 frozen = True,所以如果你想要更强的兼容性。

2026-07-09 17:36:41 181

原创 IndexedDB、Cache storage 和 Storage buckets

在传统的 Web 存储方式中,一个域名(Origin)下的所有数据(如:localStorage、IndexedDB、Cache API 等)通常混在一起,共享浏览器的总存储配额。Storage Buckets 通过将数据分类到独立的“桶”中,完美解决了上述问题。Cache Storage 是浏览器提供的专用于缓存网络请求/响应对(Request/Response)的持久化存储机制,由开发者通过 JavaScript 显式控制,独立于 HTTP 缓存头,主要用于实现离线优先的 Web 应用(如:PWA)。

2026-07-09 17:36:04 241

原创 简单vmpwn的思路

主要在理解程序逻辑上。下面我们看例题。

2026-07-08 16:05:18 188

原创 Kafka InconsistentClusterIdException 导致容器无限重启,磁盘打满排查与修复

不存在,broker 用现有 ZooKeeper 的 ID 重新注册,集群 ID 一致,启动成功。:Kafka broker 启动时从 ZooKeeper 读取集群 ID,再与本地。占了 33G——对一个没有大数据量业务的容器目录来说不正常。,会向 ZooKeeper 查询当前集群 ID 并写入本地文件。每次启动刷几十行日志,两年积累下来正好是 13.6 GB。占 297G,但那是业务历史日志,另一个异常点是。收到磁盘使用率告警,持续超过 85%,触发值。,合计 27 GB,立刻引起注意。

2026-07-08 16:04:25 227

原创 Redis--哨兵机制与CAP定理

对于master的宕机之后的冷处理是无法实现高可用的。Redis2.6开始提供高可用的解决方案--Sentinel 哨兵机制。在Redis集群中增加一个节点,充当Sentinel哨兵,用来监视master运行状态,在master宕机后,自动指定一个slave充当新的master,整个过程无需人工参与,由哨兵自动完成。但是,如果这个Sentinel哨兵发生故障,整个集群就会瘫痪,这要怎么解决?为Sentinel 创建一个集群,一个哨兵宕机,不会影响整个Redis集群的运行。

2026-07-07 15:54:07 180

原创 Visual Studio 四月更新 —— Cloud Agent 集成

上个月推出了自定义智能体,支持基于代码仓库的 .agent.md 文件。本次更新进一步拓展了该功能,新增可跨项目跟随使用的用户级智能体。用户级智能体默认存储在 %USERPROFILE%/.github/agents/ 目录下。您可以在 Tools > Options > GitHub > Copilot > Copilot Chat > Custom agents user directory 中更改该存储位置。

2026-07-07 15:52:45 207

原创 [A Primer On MC and CC] 2.1 Memory Consistency 1 - 指令重排序和 SC 模型

若有一个 SC 模型的 CPU 执行你的并发代码后, 出现了一些很诡异的结果, 这个时候先别急着把 CPU 抠下来然后往地上摔(虽然这确实挺恼火的, 这是人之常情), 我建议你先喝杯咖啡冷静一下, 然后拿一张纸和一支笔, 在纸上重新推一下这段并发代码, 看看是不是某些竞争条件被遗漏了.这层加进来后, 在核心数量少的时候其实也不影响啥, 但是核心数量一多, 诶, 这层的电路就越来越复杂, 但这不是最重要的. 更重要的是, 它。对啦, 就在前一份随笔中,我们遇见过它, 当时我稍微简略的说了, 这个就是。

2026-07-06 16:11:29 194

原创 function call 实战:让 LLM 自动判断 pod 异常、调用日志工具并完成故障分析

声明可供模型调用的函数工具tools = ["description": "获取Pod日志用于排查问题",},有一个叫的工具这个工具是用来获取 Pod 日志的它需要什么参数哪个参数是必填的function call 的本质不是让模型直接跑 python,而是让模型知道,有什么工具可以调用外部世界的接口通过 Function Call 获取外部数据,最后让 LLM 输出总结性的建议以及处理方案。

2026-07-06 16:10:51 229

原创 Calico BGP 网络模型生产实践

而在 Calico 架构中,即使三层交换机 ToR 具有路由能力,但它实际处于的架构层级也只是第二层,因为服务器本身才是第一层路由器/聚合点:Pod 流量最先也是最后到达的都是服务器上的路由栈。另一方面,为防止网络中其他节点的路由因被识别为源自本地 AS 而无法被成功安装,AS 号会在路由路径的每一个阶段被移除。​ b. 转发请求自上而下:Spine --> Leaf --> Pod,转递 default 路由,每层传递的都是新的默认路由,只有一个 AS 号,所以没有环路。

2026-07-05 15:34:20 170

原创 【EF Core】继承策略——TPH

假设有 X、Y 两实体,Y 继承 X,于是,两个实体都存到名为 T_abc 的表中。它强调“具体类型”,其实它和 TPT 很像,都每个实体都映射一个表,但是,TPC 策略中,派生类会把从基类继承的成员也映射到表中。大前提是属性的数据类型要一样,这个好理解,如果两个类中的属性,一个是 string,另一个是 double,这映射到同一列,那数据库中这个列要用什么类型?A、TPH 只映射一个表,基类子类都存放一起,所以,只能在基类的配置中调用 ToTable 方法设置表名,在配置派生类时不要再映射表名了。

2026-07-05 15:33:46 220

原创 MySQL 大批量 LONGTEXT 数据迁移导致临时表空间溢出的解决方案

数据,临时表膨胀得飞快(现象就是服务器剩余50G的C盘迅速飙红,待执行失败后又恢复正常)。当一次操作的数据量太大,临时文件直接把 C 盘写满了,SQL 自然就挂了。MySQL 是装在Windows服务器的,不过明明装在 D 盘,为什么 C 盘会爆?这样每批事务体量都很小,临时文件来不及撑爆 C 盘就已经释放了。实际上,MySQL 在执行大事务或者大查询时,会在系统临时目录()把某批数据备份到另一个库,然后删掉原表里对应的数据。-- 每批先迁移到历史库,再删除原表数据。字段,单条数据体量巨大。

2026-07-04 18:41:06 216

原创 微调LLM前你需要了解的一些概念-- 反向传播解析

Loss 是一个标量,是模型当前表现的"总扣分"。反向传播 = 用链式法则把这一个标量的"责任"摊到每一个参数头上,得到梯度g = ∂L/∂W。梯度有方向(应该增还是减)和大小(要改多猛)两层信息。优化器拿到梯度后,再叠加学习率、动量、自适应缩放、权重衰减,才得到真正写回参数的ΔW。这个"前向 → loss → 反向 → 更新"的循环跑几百万次,就把一个随机初始化的模型变成了能干活的模型。微调的本质,是让梯度信号只作用在你想让它作用的那部分参数上。

2026-07-04 18:40:21 167

原创 决策树和算法下界:为什么排序逃不开 nlogn?

在学习算法时,我们肯定会关注效率。于是我们会分析时间复杂度,比如 �(�)O(n)、�(�log⁡�)O(nlogn)、�(�2)O(n2)。但这只是算法分析的一半。另一半问题是:这个问题本身最快能做到多快?也就是说,在某个给定的计算模型下,不管你设计什么算法,它都不可能突破某个理论下界。如果一个算法的上界和问题的下界在渐近意义上相同,那么这个算法就是最优算法。例如,比较排序问题可以被证明有下界:Ω(�log⁡�)Ω(nlogn)归并排序、堆排序的时间复杂度是:�(�log⁡�)O(nlogn)所以它们在比

2026-07-03 18:51:52 241

原创 Discuz!NT中集成Memcached分布式缓存

// stats detail [on|off|dump] : 设置或者显示详细操作记录 on:打开详细操作记录 off:关闭详细操作记录 dump: 显示详细操作记录(每一个键值get,set,hit,del的次数)//Socket链接超时时间。/// stats items : 显示各个slab中item的数目和最老item的年龄(最后一次访问距离现在的秒数)/// 链接失败后是否重启,详情参见http://baike.baidu.com/view/1084309.htm。

2026-07-02 17:54:26 183

原创 Apply SOA Design Patterns with WCF (1) Configuration Centralization (配置集中管理)

WCF服务有两种配置方式:配置文件和编程方式。配置文件方式,我们大多都很熟悉了,但是,对于SOA,尤其是企业及的SOA,编程方式的配置管理更有利。最大的好处是,它使得配置中控更容易了。

2026-07-02 17:52:58 218

原创 内存化系统如何设计?

缓存系统里,DB 是权威数据源,内存只是加速,丢了可以随时重建。内存化系统不一样:内存就是权威数据源,DB 只是持久化副本,内存一乱,系统就乱。结构压缩:用 long 替代 BigDecimal(在最小计量单位前提下),用 bit 表示状态,enum 转 int。堆外内存(Chronicle Map、Unsafe / ByteBuffer)收益高,但复杂度陡增,谨慎使用。不要存 DTO,不要存 VO,不要直接映射表结构。内存结构取决于业务形态,除了业务数据本身,可能还需要索引结构。

2026-07-01 19:24:17 164

原创 Tomcat 线程池的设计与实现:StandardThreadExecutor

server.xml中service里包含Executor的配置xml-- 1. 属性说明name:Service的名称-->--2. 一个或多个excecutors --> // 看这里----></Service>Service中executors相关方法java/***/@Overrideif (!// 启动/***/@Overridereturn arr;

2026-07-01 19:23:22 188

原创 碎片装箱问题的贪心下界

这个具体的动作实际上可以抽象成一个困难的组合优化问题。Next Fit 像一个没有耐心的人,只看眼前的箱子;First Fit 和 Best Fit 愿意回头翻旧箱子,但仍然被输入顺序牵着走;FFD 和 BFD 先把大块头安排好,再让小物品填补缝隙,于是一下子跨过了很多坏情况。他们都是贪心算法,虽然得不到最优解,但经过思路优化,已经有很近的界限了。

2026-06-29 17:18:58 198

原创 SERL:让真机强化学习从“难用”走向“可复现”的强化学习框架 ----(4)算法篇(DrQ vs VICE)

BinaryClassifier 是在特征编码空间中进行二分类训练的,并通过 Mixup 和梯度惩罚来平滑决策边界,从而提高 VICE 奖励信号的稳定性和鲁棒性。

2026-06-29 17:18:24 191

原创 MySQL 架构大变革(全景版):从 5.7 到 9.7 的十年进化图谱

5.7 时代(2015–2023):在集中式架构下打补丁,引入临时表空间独立、Buffer Pool 精细化等“局部突围”。8.0 时代(2018–2026):彻底重构——事务数据字典、Undo 独立、Doublewrite 独立、并行 DDL、Instant DDL。这是架构变革的真正主体。9.7 LTS(2026 起):集大成者,吸收 Innovation 版本的所有优化,最终实现 Atomic I/O 替代 Doublewrite,完成“硬件自适应”的最后拼图。

2026-06-28 16:47:30 272

原创 为什么买了 SCA 工具,开源依赖还是管不住?

答案是:大多数企业没有。不只是没有能力,甚至根本没人知道"该由谁来决定"。

2026-06-28 16:46:35 174

原创 “Deconfounding Duration Bias in Watch-time Prediction for Video Recommendation“ 论文笔记

分桶确实是解决 duration bias 的一个非常直接有效的方式,但是不够优雅,不可避免的带来离散突变的问题(例如 60s 和 61s 本身是很接近的 duration,但是很可能会被分到两个桶,导致预测的结果相差很多),这也是为什么近几年的方法都在抛弃分桶的原因。

2026-06-23 15:43:55 208 1

原创 RV1126b只读bulidroot文件系统支持ssh功能

使用rk原厂sdk包 ,实现rv1126b适配的快启,bulidroot文件系统为增强型只读的,开启ssh功能无法生成私钥 ,导致功能异常。

2026-06-23 15:43:15 295

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除