twemproxy 没有自动摘除故障节点
我在虚拟机上安装了twemproxy,使用的是nutcracker-0.2.2.tar。配置文件如下:
lpha:
listen: 127.0.0.1:22121
hash: fnv1a_64
distribution: ketama
auto_eject_hosts: true
redis: true
server_retry_timeout: 2000
server_failure_limit: 1
servers:
- 127.0.0.1:6379:1
- 127.0.0.1:6380:1
- 127.0.0.1:6381:1
三个redis都启动时,服务正常。当我把 127.0.0.1:6379停掉时,该服务节点不自动摘除,执行set命令时一直有服务拒绝的命令。
[root@localhost redis]# ./redis-cli -p 22121 set 1 1
(error) ERR Connection refused
[root@localhost redis]# ./redis-cli -p 22121 set 1 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set 2 1
(error) ERR Connection refused
[root@localhost redis]# ./redis-cli -p 22121 set 3 1
(error) ERR Connection refused
[root@localhost redis]# ./redis-cli -p 22121 set 4 1
(error) ERR Connection refused
[root@localhost redis]# ./redis-cli -p 22121 set 0 1
(error) ERR Connection refused
当我把故障的redis恢复后,发现服务正常了。
[root@localhost redis]# ./redis-server redis.conf
[root@localhost redis]# ./redis-cli -p 22121 set 4 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set 5 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set 6 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set 8 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set 11 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set 12 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set 13 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set a 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set b 1
OK
[root@localhost redis]# ./redis-cli -p 22121 set b23 1
OK
以上测试可以看出,故障节点没有自动摘除。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
把
server_retry_timeout的值设置大一些,默认30000比较好,2000太小了