redis 重点知识与思维导图

redis 设计与实现 的个人思维导图

一. redis 面试遇到的常见问题

  1、如何利用redis 实现分布式锁,如何保证原子性

                  a)   利用setnx 命令,一条指令完成 key value expiretime的设置 

                         命令:set key_id key_value NX PX 50000

                        一条命令完成了设置+过期时间, 保证原子性

                       缺点:只能锁定 key

                 b) 利用watch 机制 , watch 命令先将key放入待观测池,watch 与exec分先后执行,执行命令时如何key被变更,抛出异常,无法执行,保证原子性

                c)  利用lua 脚本, redis 单线程执行的特性。 (新版本多线程指的是网络处理的多线性,命令执行依然是单线程) 缺点:脚本编写门槛较高,不好调试

                d) redission框架,封装了各种锁,开箱即用。  本质依然是lua脚本。

二、redis 知识体系

   

 

posted on 2020-10-10 16:48  qingcaolin  阅读(204)  评论(0)    收藏  举报

导航