cache用法

使用缓存之前,需要和产品确认能否容忍一定时间的数据不一致性,能容忍的话就用缓存,不能容忍,可以考虑写定时任务。

一般会对缓存设置失效时间,一旦超过失效时间,就要从数据库重新加载,因此应用要容忍一定时间的数据不一致

还有一种是在数据更新时立即更新缓存,不过这也会更多系统开销和事务一致性问题。

使用缓存过程中,我们经常会遇到缓存数据的不一致性和与脏读现象,

我们有什么解决策略呢? 一般情况下,我们采取缓存双淘汰机制,在更新数据库的时候淘汰缓存。

此外,设定超时时间,例如30分钟。 极限场景下,即使有脏数据入cache,这个脏数据也最多存在三十分钟。

缓存是提高数据读取性能的,缓存数据丢失和缓存不可用不会影响应用程序的处理。

因此,一般的操作手段是,如果Redis出现异常,我们手动捕获这个异常,记录日志,并且去数据库查询数据返回给用户。

原文地址:https://www.cnblogs.com/cq-Lucky/p/15497993.html