我如何以正确的方式使缓存失效?
我有一个非常具体的缓存情况。 我们使用多种缓存解决方案,并且我想知道什么是在用户操作中使缓存失效的最佳解决方案。
缓存就像这样
第一层:CDN将整个页面缓存为注销用户的HTML
第二层:用于注销用户的memcached中的完整页面缓存我有第二层的原因是为了响应边缘,有时不是所有边缘都被缓存,所以我想从缓存中“回答”边缘。
第三层:为登录用户缓存HTML partials和数据库数据。
我的问题是,我的失效过程很大程度上基于第三层,而且我没有足够好地回答第二层和第一层。
我的问题是:什么是最好的方式来从一个缓存关键字,完全无效的URL缓存完全没有耦合的URL? 例如,如果我有旅行计划,在旅行计划中有评论,我想在用户评论新评论时使整个页面旅程计划URL无效。
评论模型没有URL,“父”也没有URL,同样的评论也会在城市页面中显示,所以它是完全可重用的对象和部分。
我在37signals博客上阅读David Heinemeier Hansson的一些博客帖子。
他们承担的问题是缓存页面上的所有不同对象,然后使用CSS和JS来定制视图。
它可能无法解决你的问题,但与你给的描述我认为它可能至少会给你一些提示。
链接地址: http://www.djcxy.com/p/10581.html上一篇: How can I invalidate cache the right way?
下一篇: Eclipse CDT: 'can't find a source file' while debugging