在IISnode初始化期间,我的Meteor应用程序无法连接到Mongodb

时间:2016-06-16 00:16:48

标签: mongodb meteor iisnode

我们的部署过程遵循停止暂存槽,部署,启动暂存槽,交换到生产槽。

我们的应用程序间歇性地无法使用以下错误进行初始化:

我们已经探讨过这类问题,可以指出两篇文章:

iisnode github问题:https://github.com/tjanczuk/iisnode/issues/323表示由于IIS 500.1001而增加连接重试限制

流星问题:https://github.com/meteor/meteor/issues/425包含一个mongodb autoReconnect查询字符串,可以解决mongo db的瞬态问题。

问题仍然存在...刚刚部署后15分钟,应用程序再次稳定,我猜它有连接。

我们使用32位节点v0.10.41和meteor 1.3.2.4以及mongodb 3.2.1我们没有使用Oplog。我们的mongodb是用于开发目的的单个实例

我们的MongoDb连接字符串的url如下所示:mongodb:// [user]:[password] @ [ipaddress]:27017 / app?autoReconnect = true

Error: failed to connect to [[ipaddress]:27017]
at Object.Future.wait (D:\home\site\wwwroot\programs\server\node_modules\fibers\future.js:398:15)
at new MongoConnection (packages/mongo/mongo_driver.js:213:27)
at new MongoInternals.RemoteCollectionDriver (packages/mongo/remote_collection_driver.js:4:16)
at Object.<anonymous> (packages/mongo/remote_collection_driver.js:38:10)
at Object.defaultRemoteCollectionDriver (packages/underscore/underscore.js:750:1)
at new Mongo.Collection (packages/mongo/collection.js:102:40)
at AccountsServer.AccountsCommon (packages/accounts-base/accounts_common.js:23:18)
at new AccountsServer (packages/accounts-base/accounts_server.js:18:5)
at meteorInstall.node_modules.meteor.accounts-base.server_main.js (packages/accounts-base/server_main.js:9:12)
at fileEvaluate (packages/modules-runtime/.npm/package/node_modules/install/install.js:141:1)
- - - - -
at [object Object].<anonymous> (D:\home\site\wwwroot\programs\server\npm\node_modules\meteor\npm-mongo\node_modules\mongodb\lib\mongodb\connection\server.js:556:74)
at [object Object].emit (events.js:106:17)
at [object Object].<anonymous> (D:\home\site\wwwroot\programs\server\npm\node_modules\meteor\npm-mongo\node_modules\mongodb\lib\mongodb\connection\connection_pool.js:156:15)
at [object Object].emit (events.js:98:17)
at Socket.<anonymous> (D:\home\site\wwwroot\programs\server\npm\node_modules\meteor\npm-mongo\node_modules\mongodb\lib\mongodb\connection\connection.js:534:10)
at Socket.emit (events.js:95:17)
at net.js:441:14
at process._tickCallback (node.js:448:13)

希望你能提供帮助。

1 个答案:

答案 0 :(得分:0)

我们最终做的是转向httpplatformhandler,这提供了更多的稳定性。

我们已经转移到meteor 1.4这解决了mongo db问题,因为该应用程序现在与我们的版本兼容。