<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>行间</title>
    <link>https://blog.songxinbai.com/</link>
    <description>Recent content on 行间</description>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    <lastBuildDate>Sat, 18 Jul 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://blog.songxinbai.com/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>用 eBPF 观测容器网络延迟</title>
      <link>https://blog.songxinbai.com/tech/ebpf-container-latency/</link>
      <pubDate>Sat, 18 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/tech/ebpf-container-latency/</guid>
      <description>&lt;p&gt;把内核态的探针挂在 &lt;code&gt;tcp_probe&lt;/code&gt; 上，绕开采样盲区，第一次把 P99 抖动的来源看清楚。这篇记录了从 bpftrace 一行脚本，到写一个常驻 collector 的完整过程，以及几个踩过的坑。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Go 的 context 到底在传播什么</title>
      <link>https://blog.songxinbai.com/tech/go-context-propagation/</link>
      <pubDate>Thu, 16 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/tech/go-context-propagation/</guid>
      <description>&lt;p&gt;&lt;code&gt;context.Context&lt;/code&gt; 是 Go 里被误用最多的类型之一。它看起来像个能往里塞任何东西的口袋，于是很多代码就真的把它当参数口袋用了。但它真正要传播的只有两样东西：&lt;strong&gt;取消信号&lt;/strong&gt;和&lt;strong&gt;请求作用域内的元数据&lt;/strong&gt;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Rust 所有权的三个心智模型</title>
      <link>https://blog.songxinbai.com/tech/rust-ownership/</link>
      <pubDate>Tue, 14 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/tech/rust-ownership/</guid>
      <description>&lt;p&gt;刚学 Rust 时，我把所有权当成一条要背下来的规则。真正上手之后才发现，它更像是三种互相支撑的看待方式，任意一种卡住了，换另一种通常就通了。&lt;/p&gt;</description>
    </item>
    <item>
      <title>《原则》：把决策变成可复用的算法</title>
      <link>https://blog.songxinbai.com/reading/yuanze-dalio/</link>
      <pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/reading/yuanze-dalio/</guid>
      <description>&lt;p&gt;《原则》容易被读成一本格言集——摘几句金句发朋友圈就算读完了。但达利欧真正想说的，是一个&lt;strong&gt;动作&lt;/strong&gt;：每当你做完一个决策，别急着翻篇，把它抽象成一条下次能复用的规则。&lt;/p&gt;</description>
    </item>
    <item>
      <title>关于「深度工作」的一点怀疑</title>
      <link>https://blog.songxinbai.com/notes/deep-work-doubt/</link>
      <pubDate>Thu, 09 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/notes/deep-work-doubt/</guid>
      <description>&lt;p&gt;「深度工作」这个概念这几年很流行：屏蔽干扰、留出整块时间、进入心流。我照着做过一阵，也确实有效。但用久了，心里生出一点怀疑。&lt;/p&gt;</description>
    </item>
    <item>
      <title>我放弃了收件箱清零</title>
      <link>https://blog.songxinbai.com/notes/inbox-zero-doubt/</link>
      <pubDate>Sun, 05 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/notes/inbox-zero-doubt/</guid>
      <description>&lt;p&gt;我曾经是「收件箱清零」的信徒，每天要把未读拉到 0 才安心。坚持了两年后我停了，因为发现自己是在用一种&lt;strong&gt;看起来很有效率的忙碌&lt;/strong&gt;，替换掉真正该做的事。&lt;/p&gt;</description>
    </item>
    <item>
      <title>《置身事内》里的地方财政</title>
      <link>https://blog.songxinbai.com/reading/zhishen-shinei/</link>
      <pubDate>Thu, 02 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/reading/zhishen-shinei/</guid>
      <description>&lt;p&gt;兰小欢这本书最打动我的地方，是它不预设立场，只是耐心地把机制讲清楚：土地财政是怎么运转起来的，又为什么一旦启动就难以退出。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Postgres 索引：何时用 BRIN</title>
      <link>https://blog.songxinbai.com/tech/postgres-brin/</link>
      <pubDate>Thu, 02 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/tech/postgres-brin/</guid>
      <description>&lt;p&gt;B-tree 是默认选择，但对某些表来说，它大得离谱。BRIN（Block Range Index）是另一条路：它不记录每一行的位置，只记录每一段数据块里的最小值和最大值。&lt;/p&gt;</description>
    </item>
    <item>
      <title>把 SQLite 当成应用的文件格式</title>
      <link>https://blog.songxinbai.com/tech/sqlite-as-app-format/</link>
      <pubDate>Tue, 30 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/tech/sqlite-as-app-format/</guid>
      <description>&lt;p&gt;大多数桌面应用都要面对「怎么存文档」这个问题。常见的答案是自己设计一套文件格式，或者塞一个 JSON。但还有一个被低估的选项：&lt;strong&gt;直接用 SQLite 当文件格式&lt;/strong&gt;——一个文档就是一个 &lt;code&gt;.db&lt;/code&gt; 文件。&lt;/p&gt;</description>
    </item>
    <item>
      <title>搬到山里住了一个月</title>
      <link>https://blog.songxinbai.com/notes/month-in-mountains/</link>
      <pubDate>Sun, 28 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/notes/month-in-mountains/</guid>
      <description>&lt;p&gt;六月找了个山里的院子，远程办公住了一个月。回来后被问得最多的是「无聊吗」，但真正改变我的，不是风景，是节奏。&lt;/p&gt;</description>
    </item>
    <item>
      <title>《人月神话》重读：没有银弹</title>
      <link>https://blog.songxinbai.com/reading/renyue-shenhua/</link>
      <pubDate>Sat, 20 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/reading/renyue-shenhua/</guid>
      <description>&lt;p&gt;隔几年重读一次《人月神话》，每次都在不同的句子上停下来。这一次停在「没有银弹」：Brooks 把软件的困难分成本质的和附属的，然后冷静地断言——我们能消灭的，大多只是附属的那部分。&lt;/p&gt;</description>
    </item>
    <item>
      <title>给 CLI 加一个可组合的配置层</title>
      <link>https://blog.songxinbai.com/tech/composable-cli-config/</link>
      <pubDate>Tue, 16 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/tech/composable-cli-config/</guid>
      <description>&lt;p&gt;一个像样的 CLI 工具，配置往往来自三处：命令行参数、环境变量、配置文件。问题不在于读取它们，而在于&lt;strong&gt;它们打架时听谁的&lt;/strong&gt;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>我的 2026 工具清单</title>
      <link>https://blog.songxinbai.com/notes/2026-tools/</link>
      <pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/notes/2026-tools/</guid>
      <description>&lt;p&gt;每年都会清理一次工具，把只是「看起来很酷」的删掉，留下真正每天在用的。2026 年活下来的没几件。&lt;/p&gt;</description>
    </item>
    <item>
      <title>《被讨厌的勇气》：课题分离</title>
      <link>https://blog.songxinbai.com/reading/beitaoyande-yongqi/</link>
      <pubDate>Fri, 05 Jun 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/reading/beitaoyande-yongqi/</guid>
      <description>&lt;p&gt;阿德勒心理学里最实用的一个工具，是「课题分离」：面对一件让你焦虑的事，先问一句——这到底是谁的课题？&lt;/p&gt;</description>
    </item>
    <item>
      <title>重新学着用纸笔做计划</title>
      <link>https://blog.songxinbai.com/notes/paper-planning/</link>
      <pubDate>Sat, 30 May 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/notes/paper-planning/</guid>
      <description>&lt;p&gt;试过几乎所有的待办应用之后，今年我退回到了纸笔。不是复古情怀，而是发现数字工具有个隐蔽的副作用。&lt;/p&gt;</description>
    </item>
    <item>
      <title>《技术的本质》读书摘记</title>
      <link>https://blog.songxinbai.com/reading/jishu-benzhi/</link>
      <pubDate>Fri, 22 May 2026 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/reading/jishu-benzhi/</guid>
      <description>&lt;p&gt;Brian Arthur 想回答一个基础问题：技术到底是怎么演化的？他的答案是——技术是被&lt;strong&gt;组合&lt;/strong&gt;出来的。&lt;/p&gt;&#xA;&lt;h2 id=&#34;组合而非发明&#34;&gt;组合，而非发明&lt;/h2&gt;&#xA;&lt;p&gt;几乎没有哪个技术是凭空冒出来的。喷气发动机是压缩机、燃烧室、涡轮的组合，而它们各自又是更底层原理的组合。所谓「新技术」，多数时候是把已有的模块重新编排，或是把某个现象第一次驯化成可用的部件。&lt;/p&gt;</description>
    </item>
    <item>
      <title>关于</title>
      <link>https://blog.songxinbai.com/about/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://blog.songxinbai.com/about/</guid>
      <description>&lt;p&gt;我是一名后端工程师，白天写分布式系统，晚上读点杂书。这个博客用来存放三种东西：读完一本书后的笔记、工作里踩坑与解决的技术记录，以及一些不成体系的想法。不追求日更，只写自己想过一遍、愿意留下来的东西。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
