5个方案告诉你:高并发环境下,先操作数据库还是先操作缓存?

原文地址:https://juejin.im/post/5d694d336fb9a06aca383493

总结点:
(1)读取缓存中是否有相关数据
(2)如果缓存中有相关数据value,则返回
(3)如果缓存中没有相关数据,则从数据库读取相关数据放入缓存中key->value,再返回
(4)如果有更新数据,则先更新数据,再删除缓存
(5)为了保证第四步删除缓存成功,使用binlog异步删除
(6)如果是主从数据库,binglog取自于从库
(7)如果是一主多从,每个从库都要采集binlog,然后消费端收到最后一台binlog数据才删除缓存

你可能感兴趣的:(5个方案告诉你:高并发环境下,先操作数据库还是先操作缓存?)