假设我在CouchDB中设置了连续双向复制:
HostA< - >主机B
据我所知,这是最简单的主 - 主复制 - 因此HostA和HostB都接受读写。客户端是否可以透明地管理他操作的数据库?我使用Ektorp作为CouchDB的Java驱动程序。当我初始化连接时,我必须提供IP地址,例如http://HostA.mydomain.com:5984。当这台主机实际关闭时会发生什么?我希望实现透明度,就像在RavenDB的客户端库中一样 - 当HostA关闭时,它会尝试连接到其他复制的主机(http://ravendb.net/docs/article-page/3.0/csharp/client-api/bundles/how-client-integrates-with-replication-bundle)。
换句话说 - CouchDB是否知道其复制目标,以便客户端不必手动选择当前存活的主机?
答案 0 :(得分:0)
实现此目的的一种方法是使用HAProxy之类的负载均衡器。 HAproxy通常与Web应用程序服务器一起使用,但可以与使用HTTP的任何服务器一起使用。您可以找到example configuration in the couchdb repo。