先看一个可核对的信号:突增期间如果抓取日志里出现大量同 URL 重复请求、响应时间拉长但状态码仍是 200,优先怀疑资源压力;如果同一批 URL 在突增前后都返回 403、404、503 或跳转到错误路径,且与请求量无关,优先怀疑配置错误。把两类判断分开记录,再决定是保留现有配置、改写限流策略,还是退出这次加速动作。
资源压力通常表现为处理能力被占满,但服务仍愿意回应,只是回应变慢。可观察的证据包括:响应时间随并发上升而延长、超时增多、连接排队、同 IP 或同 UA 的请求被挤压,但状态码分布没有出现新的固定错误类型。配置错误的特征是“选择性拒绝或改道”,与请求量关系不大:某些目录、参数或 UA 始终得到 403、404、503,或者被重定向到不存在的路径,而且这种结果在突增前就存在,只是量小没被注意。
一个实际动作是分别导出突增前后各一段日志,按状态码、路径、UA 分组对比。若错误只集中在新增流量对应的路径上,说明是压力暴露了原本就存在的配置问题;若错误均匀分布在所有路径且随并发升高,更可能是资源瓶颈。这个对比结果决定下一步:前者应回到配置核对,后者才考虑扩容或限流。
保留适用于:错误与请求量无相关性,且资源指标仍有余量。此时不要因为“收录没动静”就改动 robots、站点地图或跳转规则,否则会把可解释的压力问题变成难以复现的配置问题。
改写适用于:确认是限流阈值、跳转规则或 UA 判断过严,导致正常抓取被误伤。改写时应一次只动一个变量,并保留改动前后的同一路径样本。注意 robots.txt 的抓取限制不等于可靠的索引移除,站点地图也不保证收录,所以不要把这两者当作应急开关。
退出适用于:突增来自非目标来源,且继续保留会掩盖真实配置缺陷。退出的判断依据是来源分布与目标路径不匹配,而不是单看总请求量下降。请求量归零本身不能证明处理正确,它也可能是抓取方主动降低频率、网络中断或对方策略调整的结果。
多个角色对同一现象常有不同理解:运维看到的是连接数,SEO 看到的是抓取频次,开发看到的是错误日志。把分歧转成项目,可以固定三样东西:同一时间窗、同一路径样本、同一状态码口径。例如假设某次突增后,A 认为“服务器扛不住”,B 认为“规则写错了”。核对方式是取突增前后各 30 分钟日志,只比较目标目录的 200、403、503 占比与平均响应时间。若 503 占比在突增前就存在,则 B 的判断更接近事实;若 503 只在并发超过某一水平后出现,则 A 的判断更接近事实。这里的时间窗和占比只是说明比较方法,不代表真实阈值。
得到结论后,下一步动作应直接对应结论:配置问题就改配置并复测同一路径;资源问题就限流或扩容并观察错误类型是否变化。不要在同一轮里既改配置又扩容,否则无法判断哪个动作起了作用。
如果突增期间同时出现资源紧张和配置报错,先处理与目标路径直接相关的配置错误,再评估资源侧动作。这样做的原因是配置错误会持续产生错误样本,干扰对资源压力的判断。处理完配置后重新取一段日志,若错误类型减少但响应时间仍随并发上升,才进入资源取舍阶段。