python - Google appengine 是否缓存外部请求?

标签 python google-app-engine caching urllib2

我有一个在 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/

相关文章:

python - App Engine 上带有 Cursor 问题的任务链接。异常 : Too big query offset. 还有其他人遇到这个问题吗?

java - 查询远程服务器时如何防止 JCR 节点的本地缓存?

java - 通过索引和特定限制检索 Mongo 文档

java - 为什么 Websphere v8.5 服务器即使在重启后仍将 jsp 保留在缓存中?

python - 日期格式化为月份大写

python - 如何导入和使用从自身内部的另一个文件导入类的 python 模块?

python - 有人可以解释以下功能之间的速度差异吗?

google-app-engine - 我怎样才能控制 WebKit 中的 Google App Engine 缓存行为(etags 变得疯狂)?

java - Appengine 如何删除命名空间中的所有实体 - Java

python - 如何在Python中重新打乱已打乱顺序的列表