Spring Data Mongodb连接池并发请求数限制

时间:2019-05-24 01:55:16

标签: spring mongodb spring-data-mongodb spring-data-rest

我想知道spring数据mongodb连接池如何工作。

想象一下连接到的Spring Boot Rest API服务器 mongodb通过spring数据mongodb。如果默认的连接池大小为100, 这是否意味着只能同时处理100个curl请求?如果同时有200个请求怎么办?

我如何知道给定服务器的最大池大小?例如,如果我有一台具有8 GB RAM的服务器,我可以设置的最大池大小是多少?如果我将池大小设置为100万并且服务器无法处理100万个mongodb池大小,会发生什么情况

1 个答案:

答案 0 :(得分:0)

Mongodb连接池将由MongoDB服务器根据您传递给它的参数进行管理。

默认情况下,maxPoolSize设置为100

要修改它,您可以传递这样的值

spring.data.mongodb.uri=mongodb://localhost:27017/?connectTimeoutMS=30000&minPoolSize=0&maxPoolSize=50

Refer doc了解更多信息

  

如果同时有200个请求会怎样?

通常,当池达到此大小且没有空闲连接可用时,对getConnection()的调用将在超时前最多阻塞connectionTimeout毫秒。