删除记录而不是更新Memcached中的记录有什么好处?

时间:2011-05-05 01:49:04

标签: memcached

如果密钥的值已经缓存然后在数据库中更新,我们应该使缓存中的密钥无效,或者更新缓存中的记录。

将删除与更新进行比较:更新将具有在将来节省潜在数据库命中的优势。

然后删除更新的主要优势是什么?

2 个答案:

答案 0 :(得分:0)

通过删除该项目,您不会强制造成潜在的不必要负担。比如说,记录在从缓存中读取之前连续多次更新。您将无缘无故地多次更新缓存;如果在第一次更新后从缓存中删除了该项,则所有后续更新都将执行(不需要每次都填充缓存),然后只有当实际需要该项时才从数据库加载并放入缓存。

答案 1 :(得分:0)

删除更新的主要优点是它更简单。要更新,您可能需要执行以下操作:

  • 处理cas命令的失败(可能是通过回退到删除)
  • 保留原始cas唯一值的副本,以便在cas命令
  • 中使用
  • 能够创建一个完整的新值以放入缓存

这些要求限制了您以重要方式构建代码的方式。如果您的一致性要求特别弱,您可以使用set命令将值强制放入缓存中,这将同样易于实现。