我有:
- 4 台服务器在集群中运行单个 RethinkDB 实例(4 个分片/3 个副本表)
- 2 台应用服务器(tornado + RethinkDB 代理)
客户端仅连接到其本地代理。
如何同时指定本地代理和其他代理,以便客户端在本地代理崩溃或遇到问题时可以故障转移到其他代理?
我有:
客户端仅连接到其本地代理。
如何同时指定本地代理和其他代理,以便客户端在本地代理崩溃或遇到问题时可以故障转移到其他代理?
以下是我对如何设置事物的看法。
当本地代理崩溃时,它们应该使用 systemd 之类的进程监视器重新启动。
我不使用 RethinkDB 本地代理。我使用 HAProxy 在每个应用服务器上本地以 TCP 模式运行,以转发到 RethinkDB。我使用了 Consul 模板,这样当 RethinkDB 节点加入集群时,HAProxy 配置将被更新并添加节点并自行重启。
HAProxy 对我来说非常轻巧且坚如磐石。不只是 RethinkDB,HAProxy 在本地运行并执行各种代理请求,甚至是 MySQL/Redis...
HAProxy 具有各种路由/故障转移方案,例如备份后端,...