
使用不存在的id发送请求 不直接访问redis而是直接访问mysql

解决方案:
优点:简单 缺点:消耗内存,可能发生不一致的问题

优点:内存占用较小,没有多余的key 缺点:实现较为复杂,存在误判
创建一个bitmap 初始全为空 预热布隆过滤器对传入id进行多次hash计算 由计算结果bitmap的对应位置该为1 如果传入idhash计算后在bitmap中不全为1就拦截



解决方案:

强一致 性能差


高可用 性能优



解决方案



强一致

读写锁

延时双删

总结


执行原理


RDB和AOF对比


设置该key过期后,我们不去管他,当需要该key时我们再检查其是否过期,如果过期,我们就删除它,反之则返回key。

每隔一段时间我们就对一些key进行检查,删除里面过期的key




数据淘汰策略推荐

其他问题



给锁续期
执行流程


同一线程中可重入
主从一致性
当主节点redis在获取锁时宕机会导致其他进程也获取锁成功

红锁

本文作者:钱小杰
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!