我有以下架构,
Node js server
|
Load Balancer
|
______________________________
| | |
Mongodb mongodb mongodb
replicaSet1 replicaSet2 replicaSet3
我正在使用mongodb模块。由于我正在使用负载平衡,我在nodejs级别或负载均衡器级别需要哪些配置,因此如果任何mongodb实例发生故障,nodejs仍然可以获取数据。
如果没有使用loadbalancer,我可以将其删除。该方案仅用于容错“
答案 0 :(得分:0)
最后我得到了答案。 不需要硬件负载平衡器,只需要稍微改变应用程序。
以下是我必须在连接网址中更改的内容。
var url="mongodb://"
+ "localhost:3000,"
+ "localhost:3001,"
+ "localhost:3003"
+ "/testDB?replicaSet=rs0&readPreference=secondaryPreferred";
列出以逗号分隔的网址中的所有mongodb实例,添加参数replicaSet=replisetName
,readPreference=secondaryPreferred
(这是可选的,Not recommended)。
Here是参考。