缓存【Cache Aside Pattern】
一、简介
Cache Aside Pattern 旁路缓存策略,分为读策略和写策略。
二、读写策略
旁路缓存策略,以数据库的数据为基准的,而缓存是按需才加载。
2.1、读策略
- 先从缓存中读取数据。
- 如命中缓存,直接返回。
- 如未命中缓存,则去查数据库。
- 查到数据库的数据,回写缓存。
2.2、写策略
- 先更新数据库中的数据。
- 删除缓存记录。
三、小结
该策略也会有缺点,会出现数据不一致的情况,但是概率极低,是可以接受的。
有时候需要根据业务场景,灵活运用。比如,现在有一个需求,酒店后台系统录入了一个新的政策,一录完然后就需要立马给用户展示出来,如果采用先更新数据库,再删除缓存的话,我们数据读写分离会存在延时的,就会存在读取不到数据的情况。
这时候,我们就需要对于这种特殊的需求进行一下相应的调整,这时,我在更新数据库写入的时候,我同样也写缓存,这样就可以直接查到缓存数据了。所以,我们在应用这种缓存读写策略的时候,也要关注我们自身的业务。