twemproxy 没有自动摘除故障节点

发布于 2021-11-26 09:28:10 字数 3473 浏览 907 评论 1

我在虚拟机上安装了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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

霞映澄塘 2021-11-27 18:58:31


server_retry_timeout的值设置大一些,默认30000比较好,2000太小了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文