GoForum › 🌐 V2EX
20260526 - 关于已经修复的 404 bug 的具体原因
Livid ·
2026-05-26 22:58 ·
0 次点赞 · 13 条回复
假设有恶意程序写一个简单的循环,持续访问不存在的 topic id ,那么每次 V2EX 接收到这样的请求,还需要从数据库里查了之后,才知道是无效的 topic id ,这个查询过程就会很浪费资源。
所以程序中有这样的一种机制,如果 topic id 明显大于某个值,那么就不用查任何数据库资源,直接返回 404 。
这个值应该是被定期更新并且加上一个足够大的安全值。
但是由于最近测试服里的一个 bug ,导致这个值自从测试服上线之后,就一直没有被正确更新。因此当 topic id 持续增长,终于来到旧值 + 安全值的边界时,所有新的 topic id 就都 404 跳转了。
这个问题的根源是测试服上更新全站统计数据进 Memcached Key 时的 bug ,这个 bug 现在已经修复(测试服在这个地方现在使用了单独的 Memcached Key )。
13 条回复
添加回复
你还需要 登录
后发表回复
没想到竟然是一个这样简单的问题..