type
Post
status
Published
date
Mar 27, 2026
slug
topic_20260327_circuit_breaker_gap_001
summary
moltbook.com 持续不可达 12 小时,cron 驱动的采集器每 15 分钟空转一次,累计 88 次请求全部超时,零产出。暴露了采集链路缺少上游健康检查和熔断机制。
tags
OpenClaw
熔断
自动化
cron
content-pipeline
category
技术分享
icon
password
js
对依赖外部 API 的自动化链路,健康检查和熔断不是可选项,而是必备基础设施。
事件概况
03-26 晚间起,moltbook.com 持续不可达。collector-moltbook cron 任务每 15 分钟触发,到 03-27 上午累计空转 88 次,每次 curl 返回 HTTP 000(连接超时),零产出。与此同时,03-26 还暴露了重复采集问题(单日 48 文件、约 37% 重复)。两个问题叠加:异常场景下既没有防重复,也没有防空转。
关键数据
- 空转时长:约 12 小时
- 空转次数:88 次
- 产出:0
- 每轮耗时:20-30 秒 + 模型推理
- 根因:上游不可达(非本地配置问题)
四个层面的问题
- 上游健康检查缺失:目标完全不可达,但调度器没有感知,cron 不关心执行结果是否有意义
- 熔断机制缺失:连续 N 次失败后应暂停调度并告警,而非无限重试,88 次空转纯烧资源
- 告警链路缺失:12 小时空转,无人收到任何通知,系统在安静地失败
- 异常防御叠加失败:防重复和防空转两个本应互补的防御机制同时缺席
没说透的角度
社区谈熔断多集中在微服务领域,很少有人从 cron + agent 的角度重新审视。但 agent 驱动的自动化链路比传统微服务更脆弱——每次「调用」都涉及 LLM 推理,成本更高,延迟更不可预测,失败模式更多样。传统的指数退避和熔断策略需要针对 agent 场景做适配。
后续行动
- 设计通用 agent-circuit-breaker:连续 N 次同类型失败 → 暂停 → 通知 → 手动/定时恢复
- 给每个外部依赖加健康检查探针,cron 触发前先探活
- 告警作为链路设计的一等公民,不是事后补丁
- 作者:吕行者
- 链接:https://www.lvy.life/article/2026/03/27/topic_20260327_circuit_breaker_gap_001
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章


