dev.to | 📄 原文链接 | 2026-09-15 收录

空不是一种状态

来源:dev.to — 2026-09-14

📋 概述

轮询器返回了 None,到底发生了什么?源站可能确实没有新内容,可能服务器挂了,可能接口返回 HTML 而不是 RSS 让解析器悄悄产出零条,也可能凭证过期或端点被下线,还可能是证据不足以判断。这是五种完全不同的事实,需要不同的重试策略、告警与状态迁移,但大量生产系统把它们折叠成一个值:只要 result is None,就把 source.done 置为 True。作者指出这首先是控制流问题而不是日志问题:一旦允许 None 驱动状态迁移,缺失、失败与不确定就被抹平,一次临时故障能让监控永久停止,一次解析器回归看起来像安静的订阅源,过期的凭证则会对一个完全健康的端点无限重试。

🔑 核心要点

💡 金句

一旦允许 None 驱动状态迁移,系统就摧毁了缺失、失败与不确定之间的区别。
← 返回 dev.to 首页