
java缓存
文章平均质量分 83
嗵呲咔嚓嗵
欢迎评论,如有异议或不理解的,一起研究讨论
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
缓存与数据库的数据更新
缓存的更新策略 更新数据库和Redis本身就不是原子操作,所以无论采取何种方式都不能保证强一致性,只能保证最终一致; 只能尽可能降低不一致性发生的几率,不能从根本上完全避免。 先更新数据库,在更新缓存 业务角度对于读少的场景,浪费性能资源 线程安全容易产生脏读。比如A线程更新数据库,B线程更新数据库;B线程更新缓存,A线程更新缓存 先删除缓存,再更新数据库 线程安全 请求A进行更新操作,先删除缓存; 请求B查询缓存,发现缓存失效,读取数据库,写入缓存; 请求A将数据写入数据库. 长时间读取到的都是脏数据 解原创 2022-01-06 11:29:34 · 1210 阅读 · 0 评论 -
redis分布式锁的实现和优化
目前实现分布式锁的方式主要有数据库、Redis和Zookeeper三种,本文主要阐述利用Redis的相关命令来实现分布式锁。 相关Redis命令 SETNX 如果当前中没有值,则将其设置为并返回1,否则返回0。 EXPIRE 将设置为秒后自动过期。 GETSET 将的值设置为,并返回其原来的旧值。如果原来没有旧值,则返回nil。 EVAL与EVALSHA Redis 2.6之后支持的功能,可以将一...转载 2019-03-26 13:31:49 · 379 阅读 · 0 评论