【发布时间】:2015-12-06 04:16:56
【问题描述】:
我网站上的一项功能允许注册用户为其组织创建日历。我们通过带有查询字符串参数的 URL 为这些日历提供动态生成的 iCal 提要。任何人都可以通过将提供的 URL 输入到 Google 日历、Outlook、iPhone 等中来订阅这些提要...
这几年来一直运行良好,但我们现在遇到过时或删除日历的问题。如果注册用户显着更改或删除其帐户,则日历将不复存在,提要也将毫无用处。我们目前为这些请求返回“404 - 未找到”错误(最近从“400 - 错误请求”更改)。
我的问题是,除了返回 404 之外,还有什么方法可以让订阅者停止请求错误的提要?这是similar question,接受的答案建议返回 404 或 410,并希望客户会看到错误并手动删除订阅。
到目前为止,这似乎不起作用。我们每小时收到约 10 万个提要请求,其中 30% 是针对已删除日历的。
Google、Apple 等公司在多次收到 404 错误时是否不会放弃?其他人是如何处理这个问题的?
如果这只是日志污染的问题,我不会太担心。但是,由于提要是动态生成的,因此每个请求都会命中后端数据库。处理是微不足道的,似乎不会影响性能,但情况只会变得更糟。
抱歉,如果这属于 ServerFault。虽然这个问题会影响我的服务器,但我相信解决方案是程序化的。
【问题讨论】: