RSS 订阅源太冷清?Feed-Repeat 让老帖子重新火起来

RSS 订阅源太冷清?Feed-Repeat 让老帖子重新火起来

七月 06, 2026 rss atom haskell feed-aggregation content-discovery nixos docker open-source developer-tools productivity

你可能没注意到的 RSS 复兴

说实话,RSS 订阅源这几年过得不太顺。社交媒体席卷一切的时候,RSS 悄悄变成了少数派——极客、开发者、还有那些真正想掌控自己信息摄入的人才会用的工具。但问题来了:订阅源默认按时间排序。你 2022 年那篇超棒的"API 设计的未来"早就被最近的更新淹没了,新来的订阅者压根看不到。

feed-repeat 就是来解决这个问题的。这工具是开发者 Abhinav 用 Haskell 写的,它从多个 RSS/Atom/RDF 订阅源抓取内容,然后智能地把老内容重新塞回输出流里。就好像请了个数字策展人,确保你的经典内容能被翻出来再曝光一次。

加权采样才是关键

随机很简单,随机也很没用。

要是真随机抓老帖子,你的订阅源会乱成一锅粥,订阅者肯定一脸懵。feed-repeat 用的是指数加权策略,越老的条目优先级越高。逻辑很优雅:躺在那儿时间最长的内容,越值得再给一次露脸的机会。这样一来,你的存档会按自然节奏循环出现,而不是乱七八糟地凑在一起。

工具还支持一堆可配置项:

  • 最小条目年龄——最近一周的内容绝对不会重复出现
  • 重复条目数量——每个周期拉多少条老内容
  • 域名级别限制——防止某个高产来源霸屏
  • 选择 alpha 值——微调加权曲线

为稳定性而生的功能

feed-repeat 不只是聪明——它是可以上生产环境的:

智能缓存——源订阅源会挂,服务器会抽风。feed-repeat 在本地缓存已获取的订阅源,临时不可用不会让你的输出崩掉。上游再怎么折腾,你的下游订阅源依然稳定。

多源聚合——配置多个源订阅源,每个都可以设不同的参数。比如你的技术博客可以从三个行业订阅源加上你自己的存档拉内容,每个来源的采样规则都不一样。

格式兼容——不管是 RSS 2.0、Atom 还是 RDF(是的,还真有人在用 RDF),feed-repeat 统统拿下。

各种部署方式,总有一款适合你

feed-repeat 对开发者和运维人员很友好,支持多种部署路径:

NixOS 用户——完整的模块集成。直接在 NixOS 配置里定义订阅源配置,模块会生成 systemd 服务、管理权限、甚至配置 Nginx 和可选的 SSL。这才是基础设施即代码的正确打开方式。

传统 systemd——其他 Linux 用户可以用标准的 systemd 服务加定时器。配置需要几步手动操作(创建用户、目录、权限),但文档写得很详细。

Docker——喜欢容器的有福了。feed-repeat 在 GitHub Container Registry 上有现成的镜像,挂载你的配置、输出目录和缓存卷,几秒就能跑起来。容器以非 root 用户运行,安全性加分。

GitHub Pages——因为输出是静态订阅源文件,可以直接用 GitHub Pages 或任何静态托管服务来分发。非常适合做聚合型的"精选"订阅源,关键是还免费。

谁应该关注这个?

有大量存档的技术博主——想让订阅者看到自己的最佳内容,而不是只看到最新帖子。

做内容聚合的平台——从多个来源构建精选内容流。

欣赏精致 Haskell 工具的开发者——可能想贡献代码或者 fork 项目。

NixOS 用户——想要声明式的订阅源管理,直接集成到系统配置里。

开始上手

项目为 AMD64 和 AArch64 架构都提供了预编译的静态二进制文件,不需要装 Haskell 环境就能跑。如果想从源码构建,GHCup 可以轻松搞定 Haskell 工具链。

对大多数用户来说,Docker 是从安装到运行最快的路径:拉取镜像,挂载配置,搞定。

feed-repeat 值得关注的不仅是它的实用性,更是背后的周到设计。指数加权、稳健的缓存、多种部署路径、NixOS 集成——能看出来作者先是为自己工作流打造的,然后打磨到可以分享给别人。这才是开源该有的样子。

如果你一直在琢磨怎么让存档内容发挥余热,feed-repeat 可能正是你一直没注意到的那个工具。

项目地址:github.com/abhin4v/feed-repeat

Read in other languages:

RU BG EL CS UZ TR SV FI RO PT PL NB NL HU IT FR ES DE DA EN