先保留证据,再决定是否改写解析或退出节点,是更稳妥的顺序。源站正常只能说明回源链路和源站响应大体可用,不能排除边缘节点缓存、回源策略、TLS终止或节点路由造成的异常。此时应优先固定可复核的请求与响应样本、解析与节点信息、时间线,再判断是继续观察、局部改写还是临时退出该节点。
源站正常通常指直接访问源站IP或回源地址时,响应码、响应体、响应时间在预期范围内。边缘节点异常则表现为:同一URL经CDN或反向代理访问时返回错误、内容不一致、时快时慢,或者只在部分地区、部分运营商出现。两者可以同时成立,因为边缘节点有自己的缓存、回源连接池、TLS握手和路由策略。
区分这两种状态时,不要只看一次请求。至少要在同一时间窗口内,分别记录直连源站和经边缘节点的响应。若直连源站稳定,而边缘节点间歇失败,说明问题更可能位于边缘侧,而不是源站代码或数据库。
证据要能支撑后续判断,而不是只留一句“打不开”。建议按以下类别保存:
这些证据的共同作用是让“源站正常而边缘异常”从感觉变成可核对的事实。缺少对照和原始响应,后续无论改写还是退出都容易变成猜测。
证据齐备后,决策取决于异常是否可复现、影响范围和业务容忍度。
继续保留并观察适用于:异常间歇出现,直连源站稳定,边缘节点大部分请求正常,且当前没有扩大趋势。此时应继续按固定间隔采样,记录异常是否集中在特定节点、特定地区或特定文件类型。保留的前提是你能承受短时间内的不稳定,并有人持续盯采样结果。
局部改写适用于:异常与缓存键、回源Host、TLS版本或某类请求头相关。例如假设同一URL在带Accept-Encoding: gzip时异常,不带时正常,那么可以先调整缓存键或回源请求头做验证。改写的动作必须小,且改完后立即用同一组请求样本复测,确认异常是否消失。若改写后异常消失,下一步是扩大验证范围;若没有变化,说明假设不成立,应回到证据重新分类。
临时退出节点适用于:异常持续、影响核心路径、且短时间内无法定位到具体缓存或回源规则。退出的动作可以是切换解析、调整回源线路或暂停该节点。退出后同样要复测,确认异常是否随节点消失。若退出后异常仍在,说明问题可能不在该节点,之前的判断需要修正。
三种取舍不是互斥的。可以先保留证据并观察,再局部改写验证,最后才退出。关键是每一步都留下前后对照,避免把“换了节点后暂时好了”直接当成根因。
有些结果看起来指向边缘异常,但解释并不唯一。
遇到这些现象时,应补充对照证据,而不是直接下结论。若涉及robots.txt,要记住抓取限制不等于可靠的索引移除;若涉及站点地图,提交也不保证收录。这些规则与边缘异常是不同层面的问题,不要混在同一组证据里判断。
假设某天上午发现部分用户访问异常,而直连源站返回200。可以按下面这个最小集操作:
这个动作的结果会直接影响下一步:如果直连与边缘的响应差异稳定指向某个响应头或某个节点,改写验证就有明确目标;如果差异随机出现,退出节点只能作为临时缓解,仍需继续收集证据。证据保留得越完整,后续判断越不容易被单次现象带偏。