单一数据库缓存的完美解决方案

来源:互联网 发布:数据分析员适合女生吗 编辑:程序博客网 时间:2024/06/15 11:04

单一数据库缓存的完美解决方案

 

一 属性值

Cache 设置readVersionupdateVersion两个属性值

 

读操作

1 Cache不存在

 读取readVersion,未读到设置为0,读取数据库后,更新Cache内容,设置readVersion为前面读到的readVersion

2 Cache 存在

 updateVersion不存在证明没有更新操作,直接获取Cache的内容。

 updateVersion 存在则判断readVersionupdateVersion的值

   readVersionupdateVersion相同,表示没有最新的更新操作,返回Cache的内容。

   readVersionupdateVersion不同,表示有最新更新操作,读取updateVersion,取数据库后,更新Cache内容,设置readVersion为前面读取到的updateVersion

 

三 写操作

更新数据库后,取到updateVersion,加1后保存。第一次设置updateVersion1

保证更新数据库和更新updateVersion为同一个事务