比如有一个接口:
/api/v1/configs?page=xxx&version=xxxx
tag
标记page
区别page
的缓存都要失效我用的是tag
缓存实现, 大伙用的是什么方式
// 缓存
Cache.tag(page).put(requestPath + page, responseData);
// 当修改后所有 page 失效缓存
Cache.tag(page).flush()
(如果缓存驱动是file
感觉可以用目录作为tag
的实现,如果是redis
也可以用:
划分层级实现)
tag
标记,并且每一个都能影响到缓存page
和version
区别page
和version
的缓存都要失效// tag 无先后顺序
Cache.tag([page, version]).put(requestPath + page + version, responseData);
// 如
Cache.tag([1, '1.0.0']).put('/path1', data);
Cache.tag([2, '1.0.0']).put('/path2', data);
// /path1 将会清除
Cache.tag(1).flush()
// /path1 和 /path2 都会清除
Cache.tag(version).flush()
这种方案又是怎么实现的呢?
最后也问一下大家分页缓存(也就是第一种)大家都有什么别的方案管理缓存呢.
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.