<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Redis on Zampo Blog</title><link>https://blog.cpdd.fyi/tags/redis/</link><description>Recent content in Redis on Zampo Blog</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Fri, 10 Apr 2026 15:44:00 +0800</lastBuildDate><atom:link href="https://blog.cpdd.fyi/tags/redis/index.xml" rel="self" type="application/rss+xml"/><item><title>写出 Redis 的人，为什么宁愿当个糟糕的艺术家？</title><link>https://blog.cpdd.fyi/posts/redis-antirez-story/</link><pubDate>Fri, 10 Apr 2026 15:44:00 +0800</pubDate><guid>https://blog.cpdd.fyi/posts/redis-antirez-story/</guid><description>&lt;p&gt;&lt;img src="https://blog.cpdd.fyi/Users/zampo/Documents/renbo-blog/static/images/redis-antirez-story/antirez-portrait.jpg" alt="程序员工作场景配图"&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;程序员工作场景。图片来源：Pexels&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;很多人认识 Redis，是从性能图表开始的。&lt;/p&gt;
&lt;p&gt;它快，轻，几乎成了现代互联网的基础设施。缓存、排行榜、消息队列、实时分析，背后经常都站着它。可真正让我记住 Redis 的，不是这些功能，而是它的作者在 2020 年说的一句话：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;I never wanted to be a software maintainer.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;我从来不想成为一个软件维护者。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这句话很刺耳。&lt;/p&gt;
&lt;p&gt;因为它等于承认了一件很多人不愿意承认的事：一个写出世界级系统的人，未必真的想一辈子为这个系统擦地板、补漏洞、回 issue、扛期待。&lt;/p&gt;
&lt;p&gt;他叫 Salvatore Sanfilippo，江湖名字 antirez。1977 年出生在意大利西西里岛，后来长期住在 Catania。和硅谷叙事里那种一路融资、一路扩张、一路当 CEO 的技术偶像不一样，他更像一个写代码的隐士：住在岛上，做开源，写博客，后来还去写科幻小说。&lt;/p&gt;</description></item><item><title>Redis 最容易踩的 7 个坑，问题往往不在 Redis</title><link>https://blog.cpdd.fyi/posts/redis-pitfalls-from-douyin/</link><pubDate>Sat, 04 Apr 2026 12:10:00 +0800</pubDate><guid>https://blog.cpdd.fyi/posts/redis-pitfalls-from-douyin/</guid><description>&lt;p&gt;很多人觉得 Redis 没什么门槛。&lt;/p&gt;
&lt;p&gt;命令不难，接入也快，压测时还总能打出很漂亮的数字。于是项目上线后，大家默认它“应该不会出事”。&lt;/p&gt;
&lt;p&gt;但我看过不少 Redis 问题，最后都不是 Redis 自己不行，而是前面的设计太随便：Key 怎么拆，TTL 怎么设，热点怎么扛，内存打满以后怎么办，这些事一开始没想清楚，后面都会用线上故障补课。&lt;/p&gt;
&lt;p&gt;我最近刷到一条讲 Redis 避坑的短视频，里面提到的点很典型。我没有照着转写，而是按“线上最容易出事故的顺序”重新整理成这篇文章。&lt;/p&gt;
&lt;p&gt;如果你只记一句话，那就是：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Redis 真正危险的坑，大多不是命令层面的，而是设计层面的。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.cpdd.fyi/images/redis-pitfalls-cover.svg" alt="Redis 常见架构陷阱配图：中心是 Redis，周围是 Big Key、TTL、Hot、OOM 等风险信号"&gt;&lt;/p&gt;</description></item><item><title>为什么数据库的挑战者们都没好下场</title><link>https://blog.cpdd.fyi/posts/why-rdb-challengers-always-fail/</link><pubDate>Thu, 02 Apr 2026 21:30:00 +0800</pubDate><guid>https://blog.cpdd.fyi/posts/why-rdb-challengers-always-fail/</guid><description>&lt;p&gt;1974 年，IBM 捣鼓出了世界上第一个关系数据库。&lt;/p&gt;
&lt;p&gt;50 年过去了，Oracle、MySQL、PostgreSQL 这些 RDB 依然霸榜。年轻程序员嘴上喊着 &amp;ldquo;SQL 太土&amp;rdquo;，项目里该用还是用。&lt;/p&gt;
&lt;p&gt;有意思的是，每隔几年就冒出一堆&amp;quot;未来数据库&amp;quot;来挑战 RDB 的地位：Key-Value Store、MapReduce、Hadoop、图数据库、向量数据库……&lt;/p&gt;
&lt;p&gt;我都用过。所以我知道为什么它们最后都凉了。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="redis我踩过最贵的坑"&gt;Redis：我踩过最贵的坑&lt;/h2&gt;
&lt;p&gt;Redis 是 KVS 的典型代表，用 Key 找 Value，简单粗暴。&lt;/p&gt;
&lt;p&gt;缓存用它，完美。问题是做开发的总有点执念，非要把缓存以外的事情也塞给它。&lt;/p&gt;
&lt;p&gt;我当年做物联网项目就载过这个跟头。&lt;/p&gt;
&lt;p&gt;当时选 Redis 考虑两个因素：一是物联网系统里大部分是文件，数据库只管组件状态；二是终端用 SD 卡，磁盘 IO 寿命短，想省着用。&lt;/p&gt;
&lt;p&gt;结果第三个月就开始出问题了。&lt;/p&gt;
&lt;p&gt;物联网环境里，网络和电源都不可靠，随时可能断电断网。每一个组件的状态管理变得极其复杂——在 Redis 上，你要用 Array、Set、HashMap 来描述一个简单的&amp;quot;任务运行状态&amp;quot;，换成 SQLite 的话，一个表加几条 SQL 就搞定了。&lt;/p&gt;
&lt;p&gt;最后项目里一半以上的 Bug 都跟这个定制 Redis 数据结构有关。就在写这篇文章的时候，我们还在修一个诡异的 Bug：终端下载视频时遇到网络问题，紧接着又断电，Redis 里的任务信息不完整，视频永远下不下来。&lt;/p&gt;
&lt;p&gt;你说这值不值？&lt;/p&gt;
&lt;p&gt;为了省 SD 卡那点读写寿命，被折腾了好几年。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第一个 KVS 是 AT&amp;amp;T 在 1979 年发布的，叫 DBM。发明者？又是那个男人。&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="hadoop我学了个寂寞"&gt;Hadoop：我学了个寂寞&lt;/h2&gt;
&lt;p&gt;MapReduce 不是数据库，是 Google 提出的一种分布式数据处理思路。&lt;/p&gt;
&lt;p&gt;Map 对应 SQL 里的 WHERE + ORDER BY，Reduce 对应 GROUP BY。说白了就是把 SQL 的逻辑拆到多台服务器上跑。&lt;/p&gt;</description></item></channel></rss>