我的MongoDB设置由3个节点的副本集组成。每个节点位于ec2
中不同的AWS
机器上。我的应用程序正在docker中运行。
现在,我在一台mongos
机器上有一个ec2
。如果这台机器崩溃了,我的应用程序将无法连接到MongoDB(一个单点故障)。
可能的解决方案:
mongos
的计算机上都运行着ec2
。然后,我将3个主机/端口放在queryString
中,以使用C#驱动程序进行连接(如果可能)。问题:我可以在单个mongos
中传递指向同一节点的3个不同的queryString
,以供C#客户端用作故障转移吗?mongos
共享我的应用进程。问题:现在我的应用程序将与mongos
共享其过程。如何确保MongoDB没有单点故障?此用例的最佳做法是什么?