开发者社区> 问答> 正文

如何维护 key-value 缓存?

做web,经常会用到key-value的缓存,虽然快,但缓存的维护是个问题,就拿一个社区t举例来说,如果我来做,首页的问题分页就涉及到
1.问题总数缓存
2.每页问题清单缓存
现在管理员删除了一个问题,那么为满足实时性,肯定需要更新缓存
1.问题总数缓存-1
2.每页问题清单缓存如何更新?
当然可以查数据库算出来,是否有这个必要?
这只是个例子,为了说明问题,为了更新一个缓存而造成了另外的数据库查询开销。在实际过程中,我经常用查询条件的组合作为key,这使得我在更新缓存时无从下手。但如果把缓存的key都定义死,则缓存的使用不是那么灵活。
请问大家有什么好的建议?

展开
收起
落地花开啦 2016-02-27 17:44:08 2384 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    使用缓存主要目的是为了减轻数据库的压力,过于频繁的更新缓存是不太合理的。
    一、放弃实时性,当数据到达某个定义的阀值时更新缓存。
    二、使用搜索引擎如sphinx的实时增量索引。

    2019-07-17 18:49:06
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
事务、全局索引、透明分布式 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载