陈皓的文章
https://coolshell.cn/articles/17416.html
这文章很有深度,我进行了一些思考。这个思考的主要价值在于基于数据的version,这有助于减少请求数据库,及数据库的硬盘。
对被修改的数据进行标记锁定,开始我还以为我是自己想出来的,实际上有人已经想出来
https://blog.kido.site/2018/12/09/db-and-cache-04/
https://www.w3cschool.cn/architectroad/architectroad-master-and-slave-database-architecture-optimization.html
我先写下有读写分离及缓存的情况:
在我们要写库时,先对被修改的数据进行标记锁定update_status为正在进行(过期时间比数据库过期时间长一秒就可以),这样我们读到这个缓存标记时,就会读主数据库,而不更新缓存。
如果成功了,就把数据锁定update_status为完成,过期时间延时当前时间一秒。这样我们读到这个缓存标记时,就会读主数据库,然后更新缓存并过期时间延时。
如果失败了&