当前位置:   article > 正文

redission3.16.0版本加锁高耗时?

redission3.16.0版本加锁高耗时?

事件缘由:

公司redis升级为带密码访问后,同事反馈使用redisson加锁一两秒,当时使用的版本是3.16.0

有些同事的3.11.6版本没有类似的问题出现,临时降到3.11.6版本

调研结果:

3.14.1版本开始,redisson引入了wait命令

这个wait命令将阻塞当前客户端,直到当前Session连接(主节点上)所有的写命令都被传送到指定数据量的slave节点。

如果到达超时(以毫秒为单位),则即使尚未完全传送到达指定数量的salve节点,该命令也会返回(成功传送到的节点的个数)。

运维redis升级改为带密码访问,只是在主节点配置了requirepass,并没有在从节点配置masterauth

requirepass和masterauth是不一样的,requirepass是配置在主节点的,masterauth是配置在从节点的,两边配置要一样从节点才能和主节点连接上进行主从复制

requirepass作用:对登录权限做限制,redis每个节点的requirepass可以是独立、不同的

masterauth作用:主要是针对master对应的slave节点设置的,在slave节点数据同步的时候用到。

结论分析:

所以其实不是redisson高版本有问题,是我们在redis升级为带密码访问的时候只配置了requirepass,然后redisson的3.11.6版本没问题,但是3.16.0版本有问题,是因为redisson的3.14.1版本开始引入了wait命令,写命令传送到slave节点的时候因为没有配置masterauth所以失败直至达到超时时间返回,所以整体感觉下来就是耗时增加了,但是加锁还是正常的。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/815230
推荐阅读
相关标签
  

闽ICP备14008679号