Mongoose poolSize如何工作?
我试图提高我的应用程序的性能,并且认为创build多个客户端连接是一个很好的做法,以便mongodb可以并行处理查询(每个客户端连接的队列正在同步处理)
我正在使用mongoose,并阅读连接文档,我看到你可以设置poolSize(默认是5)。 我没有设置我的连接池大小,所以假设它应该是默认的5
var mongoOptions = { server: { poolSize: Number(process.env.MONGO_POOLSIZE) || 5 } } mongoose.connect(DATABASE_URL + "?authMechanism=SCRAM-SHA-1", mongoOptions);
在我的mongo客户端中运行db.serverStatus().connections
,看到下面的回复{ "current" : 9, "available" : 195, "totalCreated" : NumberLong(2058) }
我知道包含mongo shell连接,但是为什么它是9个连接vs 6? 当我断开我的服务器,它预计下降到1。
那么如果我将poolSize设置为180,我仍然可以获得9个连接与我的设置。
有人可以解释吗?
- mongoose连接池如何工作?
- 为什么我的poolSize不适用,并且
- 是否有多个连接意味着我的查询将通过mongo db并行进程? 或者一个mongoose连接意味着一个客户端连接?