缓存有三种读写模式
- Cache Aside Pattern(常用)
- Read/Write Through Pattern
- Write Behind Caching Pattern
一、Cache Aside Pattern(常用)
Cache Aside Pattern(旁路缓存),是最经典的缓存+数据库读写模式。
读的时候,先读缓存,缓存没有的话,就读数据库,然后取出数据后放入缓存,同时返回响应。
更新的时候,先更新数据库,然后再删除缓存。
为什么是删除缓存,而不是更新缓存呢?
1、缓存的值是一个结构:hash、list,更新数据需要遍历
先遍历(耗时)后修改
2、懒加载,使用的时候才更新缓存
使用的时候才从DB中加载
也可以采用异步的方式填充缓存
开启一个线程 定时将DB的数据刷到缓存中
高并发脏读的三种情况
1、先更新数据库&#