新公司在用lumen重构做微服务api框架,上面安排在lumen原有基础上再封装一套缓存操作的类库,想问问这方面有什么需要注意的.
目前架构师给的建议有 未连接上redis或者memcache时取真实数据 get获取缓存时候检测是否缓存中存在改key set时在设置有效时长基础上随机+1-10秒
最主要的就是确保cache和真实数据的统一。读cache没命中,读真实数据,读到写cache写/删/改 先操作真实数据,成功后再操作cache。
cache和真实数据的操作必须一致,可以用读写锁来控制数据在操作完真实数据后操作cache这段时间内的cache获取到老数据问题。
最主要的就是确保cache和真实数据的统一。
读cache没命中,读真实数据,读到写cache
写/删/改 先操作真实数据,成功后再操作cache。
cache和真实数据的操作必须一致,可以用读写锁来控制数据在操作完真实数据后操作cache这段时间内的cache获取到老数据问题。