首页 文章

使用Accounts包在Azure中托管的Meteor应用程序会导致mongodb连接错误

提问于
浏览
1

Meteor Accounts包会触发一个间隔以使会话令牌过期 . 我不卖,这是Azure的东西,也许是 .

source / accounts-base.js https://github.com/meteor/meteor/blob/f9f94e21d10676aaa4a8a6809cb3bbc2fa60f536/packages/accounts-base/accounts_server.js#L53

特别是这个调用每隔十分钟从源头失败,即每次调用都失败:https://github.com/meteor/meteor/blob/f9f94e21d10676aaa4a8a6809cb3bbc2fa60f536/packages/accounts-base/accounts_server.js#L1173

堆栈跟踪:setInterval回调中的异常:错误:无法连接到Object.Future.wait的[xxxx:27017](D:\ home \ site \ wwwroot \ programs \ server \ node_modules \ fibers \ future.js:398:15 )在MongoConnection . (packages / meteor / helpers.js:119:1)在MongoConnection . (匿名函数)[作为更新](packages / mongo / mongo_driver.js:736:49)在[object Object] .update(packages / mongo / collection) .js:568:29)在accounts / accounts-base / accounts_server.js上的AccountsServer.Ap._expireTokens(packages / accounts-base / accounts_server.js:1092:14):[object Object] ._的1130:14 . packages.withValue(packages / meteor / dynamics_nodejs.js:56:1)at packages / meteor / timers.js:6:1 at runWithEnvironment(packages / meteor / dynamics_nodejs.js:110:1) - - - - - at [at object object] . (对象对象).emit(D:\ home \ site \ wwwroot \ programs \ server \ npm \ node_modules \ meteor \ npm-mongo \ node_modules \ mongodb \ lib \ mongodb \ connection \ server.js:556:74) events.js:106:17)在[object Object] . (对象对象).emit(D:\ home \ site \ wwwroot \ programs \ server \ npm \ node_modules \ meteor \ npm-mongo \ node_modules \ mongodb \ lib \ mongodb \ connection \ connection_pool.js:156:15) events.js:98:17)在Socket . (D:\ home \ site \ wwwroot \ programs \ server \ npm \ node_modules \ meteor \ npm-mongo \ node_modules \ mongodb \ lib \ mongodb \ connection \ connection.js:534:10)在Socket.emit(events.js) :95:17)at net.js:441:14 at process._tickCallback(node.js:448:13)

  • 这样糟糕吗?

  • 发生此问题时服务器会发生什么?

  • 如何解决?

我们运行的是Meteor 1.4,节点4.4.7和mongo db 3.2.1

连接字符串如下所示:mongodb:// me:shhh@x.x.x.x:27017 / app?autoReconnect = true&connectTimeoutMS = 60000&socketTimeoutMS = 60000

1 回答

  • 1

    好的,所以通过添加上面的连接字符串详细信息来解决问题:&connectTimeoutMS = 60000&socketTimeoutMS = 60000

相关问题