#青训营笔记创作活动#
2月7日 打卡day25
根据文章作者总结与阅读文章标注重点,该篇文章的要点如下:

· 在高并发类的系统中进行数据更新的时候,缓存与数据库的数据一致性问题,是一个永远无法绕过的话题。对于基于旁路型缓存的大部分业务而言,数据更新操作,一般可以组合出几种不同的处理策略:
先更新缓存,再更新数据库
先更新数据库, 再更新缓存
先删除缓存,再更新数据库
先更新数据库,再删除缓存
· 由于大部分数据库都支持事务,而几乎所有的缓存操作都不具有事务性。所以在一些写操作并发不是特别高且一致性要求不是特别强烈的情况下,可以简单的借助数据库的事务进行控制。比如先更新数据库再更新缓存,如果缓存更新失败则回滚数据库事务。
· 然而在一些并发请求特别高的时候,基于事务控制来保证数据一致性往往会对性能造成影响,且事务隔离级别设置的越高影响越大,所以也可以采用一些其它辅助策略,来替代事务的控制,如重试机制、或异步补偿机制、或多者结合方式等。
展开
评论