我使用猫鼬连接到包含1个主节点和3个辅助节点的副本集。我最近将我的应用程序从Mongoose 4.9.1更新到了5.6.2。我将连接池大小保持为以前的大小(30),并使用新的参数minSize
将最小值设置为2。
我看到我的应用程序使用了比以前更多的连接且流量相同。与之前的8-10个相比,它保持着〜20-22个主要连接处于开放状态。这使我达到了mongodb群集上的连接限制。
猫鼬是否有任何变化导致大量连接准备就绪?
这是我正在使用的配置选项。
{
minSize: 2,
poolSize: 15,
autoReconnect: true,
reconnectTries: Number.MAX_VALUE,
reconnectInterval: 5000,
useNewUrlParser: true,
useCreateIndex: true,
socketTimeoutMS: 30000
}
答案 0 :(得分:0)
尝试在连接字符串(https://docs.mongodb.com/manual/reference/connection-string/#urioption.maxPoolSize)中设置maxPoolSize
选项,尽管此选项在连接池中的行为可能取决于驱动程序。
也就是说,数据库端连接限制为20-22似乎很低。