我提出了关于缓存我的symfony2动态页面的想法
我有一种墙,其他用户的帖子显示。
我想为每个用户缓存这个墙,直到他跟随的一个用户发布了什么。
这是我设计的方法,但它有一个问题:
我在数据库中为每个用户添加一个名为E-tag的字段,假设用户有这个etag值:X3FR
只要没有用户他跟随发布任何新内容,etag保持不变,页面将从缓存(清漆或nginx)显示。
当用户发布内容时我会将etag更新为一些随机内容,这样在查找缓存时就不会有HITS,并且会从服务器显示新内容。
我唯一的问题是,将要测试的etag也将被缓存,我将一直以相同的页面结束。
No new posts -> read etag -> find cache by etag
new post -> update etag -> no cache hits -> fresh content
如何不缓存从数据库中检索到的etag? 我听说过有关ESI的问题,它会缓存片段。它能在这种情况下起作用吗?