我正在通过mongojs驱动程序使用node.js和mongodb构建一个简单的应用程序。我的目标是一些重负载(10分钟内约10000个用户,会话时间约为30秒)
我正在使用连接池,默认情况下mongojs会创建5个连接,这些连接将被共享。我想扩大这个值以提高效率,否则会有一堆请求等待一个非常不受欢迎的连接。
我发现了这个解释了如果使用本机驱动程序,如何增加池大小
http://technosophos.com/content/nodejs-connection-pools-and-mongodb
我知道mongojs是本机驱动程序的包装器,但是有没有办法在mongojs中设置连接池大小?或者是你必须从司机那里得到的。但如果是这样的话,你怎么能同时使用驱动程序和mongojs呢?有人能指点我正确的方向吗?
非常感谢。

最佳答案

池大小选项可以指定为连接字符串的一部分。选项列在MongoDB documentation中。mongojs文档中提到了连接字符串参数,但在这里找到答案并不特别明显。

var db = mongojs('mongodb://localhost/mydb?maxPoolSize=200');

也可以指定minPoolSize,但并非所有驱动程序都支持此选项。我很确定本地js驱动程序不支持这个选项。本地js驱动程序从内存中至少保留5个连接池。
默认值maxPoolSize为100。

关于node.js - MongoJS增加了池大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16598236/

10-09 14:52