<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zHT0x0g2d的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zHT0x0g2d</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zHT0x0g2d]]></copyright><item><title><![CDATA[Python 办公自动化：Word 文档加密与权限控制实战]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162791379</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162791379</guid><author>zHT0x0g2d</author><pubDate>Sat, 11 Jul 2026 14:31:48 +0800</pubDate><description><![CDATA[了解文档加密与权限控制在编写代码前，我们需要理解 Word 文档保护的两种核心机制：打开加密与编辑限制。打开加密： 这是针对整个文件的限制。它通过 Encrypt 方法直接加密文档，未授权用户在双击打开文件时，会被提示要求输入密码，只有验证通过才能查看内容。这适合合同底稿、财务报表等需要严格保密的文件。编辑限制： 这是针对操作行为的限制。它允许任何人直接打开并阅读文档，但通过 Protect 方法限制了修改权限（如只读、仅允许修订或批注等）。环境准备与库安装。]]></description><category></category></item><item><title><![CDATA[macOS/Windows 下快速输入日期、时间 _]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162791363</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162791363</guid><author>zHT0x0g2d</author><pubDate>Sat, 11 Jul 2026 14:31:06 +0800</pubDate><description><![CDATA[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 插入日期。]]></description><category></category></item><item><title><![CDATA[高性能服务器的基石：从并发模型到状态机]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162765590</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162765590</guid><author>zHT0x0g2d</author><pubDate>Fri, 10 Jul 2026 15:40:58 +0800</pubDate><description><![CDATA[Nginx：工作进程（Worker Process）模式下，每个worker进程内部实际上是单Reactor（每个worker独立监听同一端口，通过SO_REUSEPORT实现负载均衡），但整体架构是多个worker进程，每个worker内部的Reactor负责accept和I/O，可视为多进程主从Reactor。同时，单Reactor线程可能成为瓶颈。│    从Reactor 1（线程）    │ │    从Reactor 2（线程）    │ │    从Reactor N（线程）    │。]]></description><category></category></item><item><title><![CDATA[现代 NLP 的位置编码范式]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162765579</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162765579</guid><author>zHT0x0g2d</author><pubDate>Fri, 10 Jul 2026 15:40:27 +0800</pubDate><description><![CDATA[因为不同的距离会被混在同一种旋转节奏中，很容易出现 “不同 token 间：我正好比你多转一个周期，咱们俩是一样的” 这种情况，这就会混淆模型对近距离和远距离的感知。仍然是可学习的，于是模型会主动学习哪些特征适合高频旋转、哪些特征适合低频旋转、如何组织语义空间去适应旋转结构等逻辑，而这就确保了其同时拥有一定的适应能力。高频维度在远距离时旋转了太多圈，两个向量的方向越来越难对齐，于是点积上界自然降低。此外，值得一提的是，在 RoPE 的框架下，两个距离很远的 token 的 QK 点积上界会自然变小。]]></description><category></category></item><item><title><![CDATA[Windows Python 打包实战：Nuitka 环境踩坑总结与 CI 自动化构建全指南]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162736125</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162736125</guid><author>zHT0x0g2d</author><pubDate>Thu, 09 Jul 2026 17:36:41 +0800</pubDate><description><![CDATA[环境检测（是否依靠 exe 运行）有些功能（如开机自启动）可能需要限制在依靠 exe 运行的情况，相信很多开发者第一反应就信手拈来 sys.executable 侦测：但是！Nuitka 构建之后的 sys.executable 很可能稳定指向 python 解释器的路径，这个方法是不可靠的！正确解法：Nuitka 构建完毕后会注入变量为 True。Pyinstaller 打包是通过在 sys 下设置 frozen = True，所以如果你想要更强的兼容性。]]></description><category></category></item><item><title><![CDATA[IndexedDB、Cache storage 和 Storage buckets]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162736107</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162736107</guid><author>zHT0x0g2d</author><pubDate>Thu, 09 Jul 2026 17:36:04 +0800</pubDate><description><![CDATA[在传统的 Web 存储方式中，一个域名（Origin）下的所有数据（如：localStorage、IndexedDB、Cache API 等）通常混在一起，共享浏览器的总存储配额。Storage Buckets 通过将数据分类到独立的“桶”中，完美解决了上述问题。Cache Storage 是浏览器提供的专用于缓存网络请求/响应对（Request/Response）的持久化存储机制，由开发者通过 JavaScript 显式控制，独立于 HTTP 缓存头，主要用于实现离线优先的 Web 应用（如：PWA）。]]></description><category></category></item><item><title><![CDATA[简单vmpwn的思路]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162700221</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162700221</guid><author>zHT0x0g2d</author><pubDate>Wed, 08 Jul 2026 16:05:18 +0800</pubDate><description><![CDATA[主要在理解程序逻辑上。下面我们看例题。]]></description><category></category></item><item><title><![CDATA[Kafka InconsistentClusterIdException 导致容器无限重启，磁盘打满排查与修复]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162700195</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162700195</guid><author>zHT0x0g2d</author><pubDate>Wed, 08 Jul 2026 16:04:25 +0800</pubDate><description><![CDATA[不存在，broker 用现有 ZooKeeper 的 ID 重新注册，集群 ID 一致，启动成功。：Kafka broker 启动时从 ZooKeeper 读取集群 ID，再与本地。占了 33G——对一个没有大数据量业务的容器目录来说不正常。，会向 ZooKeeper 查询当前集群 ID 并写入本地文件。每次启动刷几十行日志，两年积累下来正好是 13.6 GB。占 297G，但那是业务历史日志，另一个异常点是。收到磁盘使用率告警，持续超过 85%，触发值。，合计 27 GB，立刻引起注意。]]></description><category></category></item><item><title><![CDATA[Redis--哨兵机制与CAP定理]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162668396</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162668396</guid><author>zHT0x0g2d</author><pubDate>Tue, 07 Jul 2026 15:54:07 +0800</pubDate><description><![CDATA[对于master的宕机之后的冷处理是无法实现高可用的。Redis2.6开始提供高可用的解决方案--Sentinel 哨兵机制。在Redis集群中增加一个节点，充当Sentinel哨兵，用来监视master运行状态，在master宕机后，自动指定一个slave充当新的master，整个过程无需人工参与，由哨兵自动完成。但是，如果这个Sentinel哨兵发生故障，整个集群就会瘫痪，这要怎么解决？为Sentinel 创建一个集群，一个哨兵宕机，不会影响整个Redis集群的运行。]]></description><category></category></item><item><title><![CDATA[Visual Studio 四月更新 —— Cloud Agent 集成]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162668358</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162668358</guid><author>zHT0x0g2d</author><pubDate>Tue, 07 Jul 2026 15:52:45 +0800</pubDate><description><![CDATA[上个月推出了自定义智能体，支持基于代码仓库的 .agent.md 文件。本次更新进一步拓展了该功能，新增可跨项目跟随使用的用户级智能体。用户级智能体默认存储在 %USERPROFILE%/.github/agents/ 目录下。您可以在 Tools > Options > GitHub > Copilot > Copilot Chat > Custom agents user directory 中更改该存储位置。]]></description><category></category></item><item><title><![CDATA[[A Primer On MC and CC] 2.1 Memory Consistency 1 - 指令重排序和 SC 模型]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162637439</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162637439</guid><author>zHT0x0g2d</author><pubDate>Mon, 06 Jul 2026 16:11:29 +0800</pubDate><description><![CDATA[若有一个 SC 模型的 CPU 执行你的并发代码后, 出现了一些很诡异的结果, 这个时候先别急着把 CPU 抠下来然后往地上摔(虽然这确实挺恼火的, 这是人之常情), 我建议你先喝杯咖啡冷静一下, 然后拿一张纸和一支笔, 在纸上重新推一下这段并发代码, 看看是不是某些竞争条件被遗漏了.这层加进来后, 在核心数量少的时候其实也不影响啥, 但是核心数量一多, 诶, 这层的电路就越来越复杂, 但这不是最重要的. 更重要的是, 它。对啦, 就在前一份随笔中，我们遇见过它, 当时我稍微简略的说了, 这个就是。]]></description><category></category></item><item><title><![CDATA[function call 实战：让 LLM 自动判断 pod 异常、调用日志工具并完成故障分析]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162637425</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162637425</guid><author>zHT0x0g2d</author><pubDate>Mon, 06 Jul 2026 16:10:51 +0800</pubDate><description><![CDATA[声明可供模型调用的函数工具tools = ["description": "获取Pod日志用于排查问题",},有一个叫的工具这个工具是用来获取 Pod 日志的它需要什么参数哪个参数是必填的function call 的本质不是让模型直接跑 python，而是让模型知道，有什么工具可以调用外部世界的接口通过 Function Call 获取外部数据，最后让 LLM 输出总结性的建议以及处理方案。]]></description><category></category></item><item><title><![CDATA[Calico BGP 网络模型生产实践]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162606649</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162606649</guid><author>zHT0x0g2d</author><pubDate>Sun, 05 Jul 2026 15:34:20 +0800</pubDate><description><![CDATA[而在 Calico 架构中，即使三层交换机 ToR 具有路由能力，但它实际处于的架构层级也只是第二层，因为服务器本身才是第一层路由器/聚合点：Pod 流量最先也是最后到达的都是服务器上的路由栈。另一方面，为防止网络中其他节点的路由因被识别为源自本地 AS 而无法被成功安装，AS 号会在路由路径的每一个阶段被移除。​ b. 转发请求自上而下：Spine --> Leaf --> Pod，转递 default 路由，每层传递的都是新的默认路由，只有一个 AS 号，所以没有环路。]]></description><category></category></item><item><title><![CDATA[【EF Core】继承策略——TPH]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162606643</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162606643</guid><author>zHT0x0g2d</author><pubDate>Sun, 05 Jul 2026 15:33:46 +0800</pubDate><description><![CDATA[假设有 X、Y 两实体，Y 继承 X，于是，两个实体都存到名为 T_abc 的表中。它强调“具体类型”，其实它和 TPT 很像，都每个实体都映射一个表，但是，TPC 策略中，派生类会把从基类继承的成员也映射到表中。大前提是属性的数据类型要一样，这个好理解，如果两个类中的属性，一个是 string，另一个是 double，这映射到同一列，那数据库中这个列要用什么类型？A、TPH 只映射一个表，基类子类都存放一起，所以，只能在基类的配置中调用 ToTable 方法设置表名，在配置派生类时不要再映射表名了。]]></description><category></category></item><item><title><![CDATA[MySQL 大批量 LONGTEXT 数据迁移导致临时表空间溢出的解决方案]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162585158</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162585158</guid><author>zHT0x0g2d</author><pubDate>Sat, 04 Jul 2026 18:41:06 +0800</pubDate><description><![CDATA[数据，临时表膨胀得飞快（现象就是服务器剩余50G的C盘迅速飙红，待执行失败后又恢复正常）。当一次操作的数据量太大，临时文件直接把 C 盘写满了，SQL 自然就挂了。MySQL 是装在Windows服务器的，不过明明装在 D 盘，为什么 C 盘会爆？这样每批事务体量都很小，临时文件来不及撑爆 C 盘就已经释放了。实际上，MySQL 在执行大事务或者大查询时，会在系统临时目录（）把某批数据备份到另一个库，然后删掉原表里对应的数据。-- 每批先迁移到历史库，再删除原表数据。字段，单条数据体量巨大。]]></description><category></category></item><item><title><![CDATA[微调LLM前你需要了解的一些概念-- 反向传播解析]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162585147</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162585147</guid><author>zHT0x0g2d</author><pubDate>Sat, 04 Jul 2026 18:40:21 +0800</pubDate><description><![CDATA[Loss 是一个标量，是模型当前表现的"总扣分"。反向传播 = 用链式法则把这一个标量的"责任"摊到每一个参数头上，得到梯度g = ∂L/∂W。梯度有方向（应该增还是减）和大小（要改多猛）两层信息。优化器拿到梯度后，再叠加学习率、动量、自适应缩放、权重衰减，才得到真正写回参数的ΔW。这个"前向 → loss → 反向 → 更新"的循环跑几百万次，就把一个随机初始化的模型变成了能干活的模型。微调的本质，是让梯度信号只作用在你想让它作用的那部分参数上。]]></description><category></category></item><item><title><![CDATA[决策树和算法下界：为什么排序逃不开 nlogn？]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162558970</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162558970</guid><author>zHT0x0g2d</author><pubDate>Fri, 03 Jul 2026 18:51:52 +0800</pubDate><description><![CDATA[在学习算法时，我们肯定会关注效率。于是我们会分析时间复杂度，比如 �(�)O(n)、�(�log⁡�)O(nlogn)、�(�2)O(n2)。但这只是算法分析的一半。另一半问题是：这个问题本身最快能做到多快？也就是说，在某个给定的计算模型下，不管你设计什么算法，它都不可能突破某个理论下界。如果一个算法的上界和问题的下界在渐近意义上相同，那么这个算法就是最优算法。例如，比较排序问题可以被证明有下界：Ω(�log⁡�)Ω(nlogn)归并排序、堆排序的时间复杂度是：�(�log⁡�)O(nlogn)所以它们在比]]></description><category></category></item><item><title><![CDATA[Discuz!NT中集成Memcached分布式缓存]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162525814</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162525814</guid><author>zHT0x0g2d</author><pubDate>Thu, 02 Jul 2026 17:54:26 +0800</pubDate><description><![CDATA[// 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。]]></description><category></category></item><item><title><![CDATA[Apply SOA Design Patterns with WCF (1) Configuration Centralization (配置集中管理)]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162525783</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162525783</guid><author>zHT0x0g2d</author><pubDate>Thu, 02 Jul 2026 17:52:58 +0800</pubDate><description><![CDATA[WCF服务有两种配置方式：配置文件和编程方式。配置文件方式，我们大多都很熟悉了，但是，对于SOA，尤其是企业及的SOA，编程方式的配置管理更有利。最大的好处是，它使得配置中控更容易了。]]></description><category></category></item><item><title><![CDATA[内存化系统如何设计？]]></title><link>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162495396</link><guid>https://blog.youkuaiyun.com/zHT0x0g2d/article/details/162495396</guid><author>zHT0x0g2d</author><pubDate>Wed, 01 Jul 2026 19:24:17 +0800</pubDate><description><![CDATA[缓存系统里，DB 是权威数据源，内存只是加速，丢了可以随时重建。内存化系统不一样：内存就是权威数据源，DB 只是持久化副本，内存一乱，系统就乱。结构压缩：用 long 替代 BigDecimal（在最小计量单位前提下），用 bit 表示状态，enum 转 int。堆外内存（Chronicle Map、Unsafe / ByteBuffer）收益高，但复杂度陡增，谨慎使用。不要存 DTO，不要存 VO，不要直接映射表结构。内存结构取决于业务形态，除了业务数据本身，可能还需要索引结构。]]></description><category></category></item></channel></rss>