RethinkDB客户端连接代理之间的故障转移

时间:2016-02-18 22:00:05

标签: python client rethinkdb failover rethinkdb-python

我有:

  • 在集群中运行单个RethinkDB实例的4台服务器(4个分片/ 3个副本表)
  • 2个应用程序服务器(tornado + RethinkDB代理)

客户端仅连接到本地代理。

如何指定本地+其他代理,以便客户端在本地代理崩溃或遇到问题时可以故障转移到其他代理?

1 个答案:

答案 0 :(得分:0)

以下是我对如何设置东西的看法。

当本地代理崩溃时,他们应该使用像systemd这样的进程监视器重新启动。

我不使用RethinkDB本地代理。我在每个应用服务器上本地使用HAProxy在TCP模式下运行,转发到RethinkDB。我使用了Consul Template,这样当RethinkDB节点加入集群时,HAProxy配置将被更新并添加节点并自行重启。

HAProxy对我来说非常轻盈且坚如磐石。不只是RethinkDB,HAProxy在本地运行并执行所有类型的代理请求,甚至是MySQL / Redis ......

HAProxy具有各种路由/故障转移功能,如备份后端,......