本文基于
redis_version:6.2.5
用法
控制从节点允许读写
操作,还是读
操作。
replica-read-only yes
注意事项:
- 默认
yes
,只读操作。 -
replica-read-only
支持参数[yes
,no
],no 支持读写操作。 - 这里说的从节点,是普通从节点(
!非cluster集群中的从节点
)。 - cluster集群的从节点不支持写操作,配置为
replica-read-only no
也没用!
实操
先看普通从节点。
putong.png
总结:普通从节点可以支持读写操作。
再看cluster集群从节点。
cluster.png
总结:cluster集群的从节点,不支持写(配置无效)。
源码实现
为什么cluster集群的从节点设置了replica-read-only
还是不支持写操作?processCommand函数是命令入口,判断顺序由上至下,line:5289~5294
先判断cluster集群
,line:5400
后判断replica-read-only
。所以,当节点身份是cluster从节点时,直接执行重定向,不会执行replica-read-only配置的判断。
原生注释
note.png本文属于原创,首发于微信公众号【小易哥学呀学】,如需转载请后台留言。
网友评论