我有一个非常具体的缓存情况。我们使用多种缓存解决方案,我想知道在用户操作上失效缓存的最佳解决方法是什么。
缓存如下:
第一层:CDN将完整页面作为HTML对于未登录的用户进行缓存。
第二层:对于未登录的用户,在memcached中缓存完整页面 我有第二层的原因是响应边缘,有时不是所有边缘都被缓存,所以我也希望从缓存中“回答”边缘。
第三层:为已登录的用户缓存HTML部分和数据库数据。
我的问题是,我的无效处理过程很大程度上基于第三层,而我没有很好地回答第二层和第一层。
我的问题是:从与URL绝对没有耦合的缓存密钥上,失效全URL的缓存的最佳方法是什么?例如,如果我有一个旅行计划,在旅行计划中有评论,当用户发表新评论时,我希望失效完整的旅行计划URL。
评论模型没有URL,并且“父级”也没有URL,相同的评论也会出现在城市页面中,因此它完全是一个可重用对象和部分。
缓存如下:
第一层:CDN将完整页面作为HTML对于未登录的用户进行缓存。
第二层:对于未登录的用户,在memcached中缓存完整页面 我有第二层的原因是响应边缘,有时不是所有边缘都被缓存,所以我也希望从缓存中“回答”边缘。
第三层:为已登录的用户缓存HTML部分和数据库数据。
我的问题是,我的无效处理过程很大程度上基于第三层,而我没有很好地回答第二层和第一层。
我的问题是:从与URL绝对没有耦合的缓存密钥上,失效全URL的缓存的最佳方法是什么?例如,如果我有一个旅行计划,在旅行计划中有评论,当用户发表新评论时,我希望失效完整的旅行计划URL。
评论模型没有URL,并且“父级”也没有URL,相同的评论也会出现在城市页面中,因此它完全是一个可重用对象和部分。