<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tsukikage · 全站内容</title><description>Tsukikage 的全站内容订阅</description><link>https://tsukikage7.com/</link><language>zh-CN</language><atom:link href="https://tsukikage7.com/feed.xml" rel="self" type="application/rss+xml"/><item><title>合照里没有下雨</title><link>https://tsukikage7.com/writings/he-zhao-li-mei-you-xia-yu/</link><guid isPermaLink="true">https://tsukikage7.com/writings/he-zhao-li-mei-you-xia-yu/</guid><description>我欠许知夏四块五，欠了很多年。后来我才知道，我欠她的，从来不止四块五。 </description><pubDate>Fri, 09 Oct 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;我欠许知夏四块五，欠了很多年。后来我才知道，我欠她的，从来不止四块五。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/writings/he-zhao-li-mei-you-xia-yu/cover.webp&quot; alt=&quot;合照里没有下雨&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>青春</category><category>校园</category><category>初恋</category></item><item><title>异步任务：如何处理乱序结果与并发上限</title><link>https://tsukikage7.com/blog/async-task-ordering/</link><guid isPermaLink="true">https://tsukikage7.com/blog/async-task-ordering/</guid><description>以连续刷新同一份数据为例，处理旧结果覆盖新状态、请求堆积和失败回退；用 Pekko Typed 复现并验证。 </description><pubDate>Wed, 14 Jun 2023 09:16:13 GMT</pubDate><content:encoded>&lt;p&gt;以连续刷新同一份数据为例，处理旧结果覆盖新状态、请求堆积和失败回退；用 Pekko Typed 复现并验证。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/async-task-ordering.svg?v=20261010b&quot; alt=&quot;异步任务：如何处理乱序结果与并发上限&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>并发编程</category></item><item><title>集群运维的失败边界：批次预算、健康门槛与停止条件</title><link>https://tsukikage7.com/blog/big-data-cluster-scripts/</link><guid isPermaLink="true">https://tsukikage7.com/blog/big-data-cluster-scripts/</guid><description>把批量 SSH 片段改为显式操作协议，用模拟适配器验证既有故障、超时与后续节点停止。 </description><pubDate>Sun, 30 Jul 2023 07:16:45 GMT</pubDate><content:encoded>&lt;p&gt;把批量 SSH 片段改为显式操作协议，用模拟适配器验证既有故障、超时与后续节点停止。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/big-data-cluster-scripts.svg?v=20261010b&quot; alt=&quot;集群运维的失败边界：批次预算、健康门槛与停止条件&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>数据工程</category></item><item><title>增量数仓：事件版本、迟到数据与可重放发布</title><link>https://tsukikage7.com/blog/data-warehouse-layering/</link><guid isPermaLink="true">https://tsukikage7.com/blog/data-warehouse-layering/</guid><description>从订单更新、跨日修正与删除出发，设计版本投影、幂等账本和原子发布，用故障注入验证可重放性。 </description><pubDate>Tue, 25 Jul 2023 14:37:26 GMT</pubDate><content:encoded>&lt;p&gt;从订单更新、跨日修正与删除出发，设计版本投影、幂等账本和原子发布，用故障注入验证可重放性。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/data-warehouse-layering.svg?v=20261010b&quot; alt=&quot;增量数仓：事件版本、迟到数据与可重放发布&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>数据工程</category></item><item><title>Dubbo-Go Triple 泛化调用：调用契约与跨语言边界</title><link>https://tsukikage7.com/blog/dubbo-go-triple-generic-call/</link><guid isPermaLink="true">https://tsukikage7.com/blog/dubbo-go-triple-generic-call/</guid><description>以已合入的 Triple 泛化调用改动为工程案例，分析调用元数据、序列化封装、版本范围与互操作验证。 </description><pubDate>Tue, 13 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;以已合入的 Triple 泛化调用改动为工程案例，分析调用元数据、序列化封装、版本范围与互操作验证。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/dubbo-go-triple-generic-call.webp&quot; alt=&quot;Dubbo-Go Triple 泛化调用：调用契约与跨语言边界&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>分布式系统</category></item><item><title>[epoll] EP1 为什么需要 epoll？</title><link>https://tsukikage7.com/blog/epoll-ep1/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep1/</guid><description>Linux 高性能网络编程入门，从 C10K 问题到 IO 多路复用的演进历程，深入理解 epoll 相比 select 和 poll 的巨大优势 </description><pubDate>Thu, 01 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Linux 高性能网络编程入门，从 C10K 问题到 IO 多路复用的演进历程，深入理解 epoll 相比 select 和 poll 的巨大优势 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep1.webp&quot; alt=&quot;[epoll] EP1 为什么需要 epoll？&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>[epoll] EP2 epoll 的核心原理</title><link>https://tsukikage7.com/blog/epoll-ep2/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep2/</guid><description>深入解析 epoll 的内部工作机制，包括三个核心 API、红黑树与就绪链表数据结构、以及水平触发与边缘触发的区别 </description><pubDate>Fri, 02 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;深入解析 epoll 的内部工作机制，包括三个核心 API、红黑树与就绪链表数据结构、以及水平触发与边缘触发的区别 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep2.webp&quot; alt=&quot;[epoll] EP2 epoll 的核心原理&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>[epoll] EP3 事件循环、缓冲区与工作分配</title><link>https://tsukikage7.com/blog/epoll-ep3/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep3/</guid><description>分清事件通知和数据传输，梳理事件数组复用、非阻塞读写、缓冲区生命周期与背压。 </description><pubDate>Sat, 03 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;分清事件通知和数据传输，梳理事件数组复用、非阻塞读写、缓冲区生命周期与背压。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep3.webp&quot; alt=&quot;[epoll] EP3 事件循环、缓冲区与工作分配&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>Go 并发控制：准入、背压与取消的资源边界</title><link>https://tsukikage7.com/blog/golang-concurrency-control/</link><guid isPermaLink="true">https://tsukikage7.com/blog/golang-concurrency-control/</guid><description>从无界等待的反例出发，构建有界 worker pool，验证并发上限、失败取消和退出回收。 </description><pubDate>Wed, 13 Nov 2024 08:09:01 GMT</pubDate><content:encoded>&lt;p&gt;从无界等待的反例出发，构建有界 worker pool，验证并发上限、失败取消和退出回收。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/golang-concurrency-control.svg?v=20261010b&quot; alt=&quot;Go 并发控制：准入、背压与取消的资源边界&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>并发编程</category></item><item><title>Go 依赖装配：构造失败、资源所有权与逆序回收</title><link>https://tsukikage7.com/blog/golang-wire-dependency-injection/</link><guid isPermaLink="true">https://tsukikage7.com/blog/golang-wire-dependency-injection/</guid><description>把依赖注入放回资源生命周期，验证部分构造失败的回滚、清理错误与幂等关闭，并校正 Wire 的维护状态。 </description><pubDate>Tue, 06 Aug 2024 05:56:21 GMT</pubDate><content:encoded>&lt;p&gt;把依赖注入放回资源生命周期，验证部分构造失败的回滚、清理错误与幂等关闭，并校正 Wire 的维护状态。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/golang-wire-dependency-injection.svg?v=20261010b&quot; alt=&quot;Go 依赖装配：构造失败、资源所有权与逆序回收&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>软件设计</category></item><item><title>io_uring：提交、完成与缓冲区生命周期</title><link>https://tsukikage7.com/blog/io-uring/</link><guid isPermaLink="true">https://tsukikage7.com/blog/io-uring/</guid><description>区分就绪通知和完成通知，用一次文件读取说明 SQE、CQE、错误处理与缓冲区复用边界。 </description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;区分就绪通知和完成通知，用一次文件读取说明 SQE、CQE、错误处理与缓冲区复用边界。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/io-uring.webp&quot; alt=&quot;io_uring：提交、完成与缓冲区生命周期&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>Java Map 的并发边界：复合操作与请求合并</title><link>https://tsukikage7.com/blog/java-map-selection/</link><guid isPermaLink="true">https://tsukikage7.com/blog/java-map-selection/</guid><description>用确定性反例分析可变 key、丢失更新和慢加载，并实现可取消等待、失败可重试的 single-flight。 </description><pubDate>Thu, 03 Aug 2023 09:00:53 GMT</pubDate><content:encoded>&lt;p&gt;用确定性反例分析可变 key、丢失更新和慢加载，并实现可取消等待、失败可重试的 single-flight。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/java-map-selection.svg?v=20261010b&quot; alt=&quot;Java Map 的并发边界：复合操作与请求合并&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>并发编程</category></item><item><title>Spark Shuffle：倾斜证据与二阶段聚合的正确性</title><link>https://tsukikage7.com/blog/spark-shuffle-skew/</link><guid isPermaLink="true">https://tsukikage7.com/blog/spark-shuffle-skew/</guid><description>用十万条可控数据观察热 key，证明拆分聚合保留 sum/count，并区分分区行数、Shuffle 字节与真实性能。 </description><pubDate>Mon, 03 Jul 2023 13:35:57 GMT</pubDate><content:encoded>&lt;p&gt;用十万条可控数据观察热 key，证明拆分聚合保留 sum/count，并区分分区行数、Shuffle 字节与真实性能。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/spark-shuffle-skew.svg?v=20261010b&quot; alt=&quot;Spark Shuffle：倾斜证据与二阶段聚合的正确性&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>数据工程</category></item><item><title>分布式任务：用租约与 fencing 隔离过期写入</title><link>https://tsukikage7.com/blog/task-lease-fencing/</link><guid isPermaLink="true">https://tsukikage7.com/blog/task-lease-fencing/</guid><description>任务被接管后，旧执行者仍可能恢复并写入。分析租约的作用、存储端的写入检查，以及过期与接管的区别。 </description><pubDate>Tue, 13 Jun 2023 09:14:52 GMT</pubDate><content:encoded>&lt;p&gt;任务被接管后，旧执行者仍可能恢复并写入。分析租约的作用、存储端的写入检查，以及过期与接管的区别。 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/task-lease-fencing.svg?v=20261010b&quot; alt=&quot;分布式任务：用租约与 fencing 隔离过期写入&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>分布式系统</category></item><item><title>CentOS 7.9 安装 Docker：历史环境记录</title><link>https://tsukikage7.com/notes/centos-docker-installation/</link><guid isPermaLink="true">https://tsukikage7.com/notes/centos-docker-installation/</guid><description>记录 2023 年使用的 CentOS 7.9 与 Compose 1.26.2 环境。 </description><pubDate>Mon, 12 Jun 2023 14:52:10 GMT</pubDate><content:encoded>&lt;p&gt;记录 2023 年使用的 CentOS 7.9 与 Compose 1.26.2 环境。 &lt;/p&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Docker</category><category>Docker Compose</category><category>CentOS</category></item><item><title>Kubernetes 1.20.9：CentOS 集群安装记录</title><link>https://tsukikage7.com/notes/centos-kubernetes-installation/</link><guid isPermaLink="true">https://tsukikage7.com/notes/centos-kubernetes-installation/</guid><description>保留 Kubernetes 1.20.9 集群的历史安装步骤和输出。 </description><pubDate>Wed, 09 Aug 2023 09:46:53 GMT</pubDate><content:encoded>&lt;p&gt;保留 Kubernetes 1.20.9 集群的历史安装步骤和输出。 &lt;/p&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Kubernetes</category><category>Docker</category><category>CentOS</category></item><item><title>Docker Compose 服务配置备忘</title><link>https://tsukikage7.com/notes/docker-compose-service-notes/</link><guid isPermaLink="true">https://tsukikage7.com/notes/docker-compose-service-notes/</guid><description>集中保存 2023 年 ClickHouse、Kafka 与 Umami 的学习配置，列明配套文件和访问条件。 </description><pubDate>Thu, 15 Jun 2023 15:53:07 GMT</pubDate><content:encoded>&lt;p&gt;集中保存 2023 年 ClickHouse、Kafka 与 Umami 的学习配置，列明配套文件和访问条件。 &lt;/p&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Docker Compose</category></item><item><title>Git 基础命令与工作流程笔记</title><link>https://tsukikage7.com/notes/git-version-control/</link><guid isPermaLink="true">https://tsukikage7.com/notes/git-version-control/</guid><description>版本控制概念、常用命令与操作截图的学习记录。 </description><pubDate>Fri, 16 Jun 2023 09:31:41 GMT</pubDate><content:encoded>&lt;p&gt;版本控制概念、常用命令与操作截图的学习记录。 &lt;/p&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Git</category></item><item><title>[epoll] EP8 实战案例分析</title><link>https://tsukikage7.com/blog/epoll-ep8/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep8/</guid><description>Nginx、Redis、Go runtime 中 epoll 的实际应用，深入理解真实项目如何使用 epoll </description><pubDate>Thu, 08 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Nginx、Redis、Go runtime 中 epoll 的实际应用，深入理解真实项目如何使用 epoll &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep8.webp&quot; alt=&quot;[epoll] EP8 实战案例分析&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>[epoll] EP7 监控与调试</title><link>https://tsukikage7.com/blog/epoll-ep7/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep7/</guid><description>epoll 的性能监控工具、常见问题诊断、性能瓶颈定位，以及实战中的调试技巧 </description><pubDate>Wed, 07 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;epoll 的性能监控工具、常见问题诊断、性能瓶颈定位，以及实战中的调试技巧 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep7.webp&quot; alt=&quot;[epoll] EP7 监控与调试&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>[epoll] EP6 深入内核源码</title><link>https://tsukikage7.com/blog/epoll-ep6/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep6/</guid><description>Linux 内核中 epoll 的完整实现，包括事件循环、回调机制、与网络驱动的交互等底层细节 </description><pubDate>Tue, 06 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Linux 内核中 epoll 的完整实现，包括事件循环、回调机制、与网络驱动的交互等底层细节 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep6.webp&quot; alt=&quot;[epoll] EP6 深入内核源码&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>[epoll] EP5 跨平台 IO 多路复用对比</title><link>https://tsukikage7.com/blog/epoll-ep5/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep5/</guid><description>Linux 的 epoll、macOS/BSD 的 kqueue、Windows 的 IOCP，以及 Go 的跨平台封装机制详解 </description><pubDate>Mon, 05 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Linux 的 epoll、macOS/BSD 的 kqueue、Windows 的 IOCP，以及 Go 的跨平台封装机制详解 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep5.webp&quot; alt=&quot;[epoll] EP5 跨平台 IO 多路复用对比&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>[epoll] EP4 多进程/多线程的 epoll 使用</title><link>https://tsukikage7.com/blog/epoll-ep4/</link><guid isPermaLink="true">https://tsukikage7.com/blog/epoll-ep4/</guid><description>epoll 在多进程和多线程环境下的使用，包括惊群效应、EPOLLEXCLUSIVE 独占模式、SO_REUSEPORT 负载均衡，以及完整的多进程服务器实现 </description><pubDate>Sun, 04 Jan 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;epoll 在多进程和多线程环境下的使用，包括惊群效应、EPOLLEXCLUSIVE 独占模式、SO_REUSEPORT 负载均衡，以及完整的多进程服务器实现 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/epoll-ep4.webp&quot; alt=&quot;[epoll] EP4 多进程/多线程的 epoll 使用&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>Linux 与网络</category></item><item><title>线上调试Arthas的学习使用</title><link>https://tsukikage7.com/blog/arthas-debugging-guide/</link><guid isPermaLink="true">https://tsukikage7.com/blog/arthas-debugging-guide/</guid><description>线上调试Arthas的学习使用 </description><pubDate>Thu, 06 Jul 2023 07:19:51 GMT</pubDate><content:encoded>&lt;p&gt;线上调试Arthas的学习使用 &lt;/p&gt;&lt;img src=&quot;https://assets.tsukikage7.com/blog/cover/arthas-debugging-guide.svg?v=20261010b&quot; alt=&quot;线上调试Arthas的学习使用&quot; /&gt;</content:encoded><dc:creator>Tsukikage</dc:creator><category>开发工具</category></item></channel></rss>