摘要: 场景:页面包含多个大 sql。 目的:尽量保证接口响应速度,数据库压力可暂不考虑(并发不大,耗时 sql 多)。 思路: 1、如果 redis 中不存在缓存,查询数据库并添加缓存,根据数据变化频率设置缓存过期时间; 2、如果 redis 中存在缓存,提交更新缓存的异步任务(可选,针对数据变化频率高, 阅读全文
posted @ 2021-09-27 23:21 牛有肉 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 手写分布式锁,仅适用于单例 Redis。 与多线程的加锁解锁机制一样,分解出加锁解锁需要做的动作后,想办法保证动作的原子性即可。 X86 架构提供了 getAndSet 原语,保证了锁的检查与上锁这组动作的原子性,操作系统在其基础上提供了非常多的加锁方法。 Redis 也提供了类似的 “原语”:SE 阅读全文
posted @ 2021-09-27 11:07 牛有肉 阅读(409) 评论(0) 推荐(0) 编辑