我想知道是否只有使用一个地址才能使mongodb故障转移。我知道副本集通常用于此,同时依靠驱动程序进行切换,但我希望可能有一个解决方案,允许一个地址或主机名在mongodb实例被识别为时自动切换下来。
有这样的运气吗?我知道MySQL有解决方案,但是我没有为MongoDB找到一些东西好运。
谢谢!
答案 0 :(得分:1)
是的,驱动程序可以保存副本集的缓存映射,当集合遭受选举时,它将查询新的主节点。此映射每隔一段时间刷新一次,但是,如果您的应用程序重新启动(进程退出或某事,或PHP fork模式的每个请求),则驱动程序别无选择,只能刷新其映射。此时您将遇到连接问题。
当然,最好的办法是添加种子清单。
使用单个IP可以抵消内置于MongoDB中的冗余。