我选择是否启用缓存标头以及它将产生的差异。 目前的代码就是这个,我想知道我是否应该启用缓存以及它将做什么?
#seconds_valid = 8600
#self.response.headers['Cache-Control'] = "public, max-age=%d" % seconds_valid
self.response.headers['Cache-Control'] = 'no-cache'
如果我将代码更改为
,我可以测试区别吗?seconds_valid = 8600
self.response.headers['Cache-Control'] = "public, max-age=%d" % seconds_valid
我是以正确的方式做到的吗?当我启用缓存时究竟会发生什么?我仍然可以更新页面吗?
谢谢
答案 0 :(得分:4)
还有AppEngine的缓存反向代理/边缘缓存,如果给出Cache-Control
并且设置为max-age
,可能会选择public
标头例。边缘缓存是“尽力而为”,这意味着它不会100%确定它会缓存您的响应。
答案 1 :(得分:0)
设置Cache-Control
对您的应用程序没有任何影响。此值仅供Web浏览器使用,缓存仅在客户端进行,而不是在服务器上进行。正确的Cache-Control值可以减少服务器负载并节省带宽,因为用户代理会尝试在本地缓存内容,但它与appengine无关。
如果您正在寻找服务器端缓存以缩短响应时间并减少数据库读取,请查看memcached。要以最佳方式使用memcache,您可能还需要在Internet上搜索缓存失效策略。