使用Compose.io MongoDB +的MongoDB问题

时间:2016-02-17 19:38:29

标签: node.js mongodb meteor

在MongoDB Classic部署(MongoDB版本3.0)之后最近使用Compose.io升级MongoDB +(MongoDB版本3.2)时,我注意到他们没有为新部署提供ReplicaSet。

没有用于部署的副本集,它是一个分片部署,由一个“mongos'路由器。

每个部署都有2个mongos路由器。使用meteor,我们只能使用一个mongos路由器,因为meteor会将MONGO_URL放在一个逗号分隔的两个mongos路由器作为replicaSet,我们得到一个错误,上面写着MongoError:not master。

所以我们只将一个路由器放在MONGO_URL中。

现在问题:

我在Galaxy Developer的版本上托管了我的应用程序。 如果一个mongos路由器出现故障,应用程序将停止并且不会再次处理Observers。

因此,我们需要在应用程序中创建一些简单的测试逻辑,以查看主机是否已启动,如果没有移动到我认为目前Meteor不支持的下一个入口点。

如果我错了,请纠正我。什么是解决方法。

1 个答案:

答案 0 :(得分:1)

您可以在mongos前添加代理(如haproxy,lvs),请参阅https://gist.github.com/sawanoboly/1366694

Meteor ==> Haproxy ==> [Mongos1,Mongos2 ...] ==> [ReplicaSet1,ReplicaSet2 ...]