我有一个在 appengine 上运行的非常简单的应用程序,它每五分钟请求一个网页并解析特定的数据。
除了我从外部请求(使用 urllib2)返回的响应没有反射(reflect)页面的最新更改外,一切正常。有时需要几分钟才能获得最新的,有时需要一个多小时。
appengine 是否设置了一个透明的缓存层?还是我在这里还缺少其他东西?我查看了所请求页面的缓存 header ,没有发送任何 Expires、LastModified 或 ETags header 。
更新: 有时,它会为许多请求获取页面的新版本,然后随机获取一个旧的过时版本。
最佳答案
这似乎是 App Engine 的一个问题 team is aware of .建议的解决方法是在几秒钟内设置 Cache-Control header 和 max-age:
result = urlfetch.fetch(url, headers = {'Cache-Control' : 'max-age=240'})
希望对您有用。
关于python - Google appengine 是否缓存外部请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2826238/