2024-05-02
版权声明:本文为博主付费文章,严禁任何形式的转载和摘抄,维权必究。 本文链接:https://www.skjava.com/mianshi/baodian/detail/1871139101

回答

目前主流的缓存更新策略有如下几种:

  • Cache-Aside Pattern:旁路缓存模式。它要求应用程序在读取数据时,首先要查询缓存,如果缓存中没有所需数据(缓存未命中),则从数据库中加载数据,然后将数据添加到缓存中。
  • Read-Through/Write-through:这种模式与 Cache-Aside Pattern 差不多,只不过在这种模式中,应用程序与缓存之间多了一个中间层 Cache-Provider,这样应用程序就不直接与缓存和数据库交互了,由 Cache-Provider 完成交互。
  • Write-behind:异步写入模式,是一种先写入缓存,然后异步批量更新到数据库的策略。这种模式可以减少对数据库的写操作次数,适用于写频繁但对即时一致性要求不高的场景。

扩展

Cache-Aside

Cache-Aside,称之为旁路缓存模式,一种缓存懒加载机制,是我们使用最为广泛的缓存模式。

Cache-Aside 要求应用程序在读取数据时,首先要查询缓存,如果缓存中没有所需数据(缓存未命中),则从数据库中加载数据,然后将数据添加到缓存中。

对于写请求,Cache-Aside 采取的策略是先更新数据库,然后再删除缓存。