【发布时间】:2021-09-02 17:59:42
【问题描述】:
我有一个连接 Atlas 的 Spring Boot 应用程序。我在值为 200 的连接字符串中添加了 maxPoolSize,但它始终在 Atlas 仪表板中显示约 300 个连接。我知道阿特拉斯从池中保留的连接很少,但差异仍然很大。
看来 Atlas 不尊重 maxPoolSize 参数,还是我做错了什么?
注意:在这个项目中,我们还使用了从 MongoClient 获取连接的 Quartz 调度程序。
【问题讨论】:
我有一个连接 Atlas 的 Spring Boot 应用程序。我在值为 200 的连接字符串中添加了 maxPoolSize,但它始终在 Atlas 仪表板中显示约 300 个连接。我知道阿特拉斯从池中保留的连接很少,但差异仍然很大。
看来 Atlas 不尊重 maxPoolSize 参数,还是我做错了什么?
注意:在这个项目中,我们还使用了从 MongoClient 获取连接的 Quartz 调度程序。
【问题讨论】:
我想我已经得到了答案。我们有 3 个副本集 (P-S-S),我分配的 maxPoolSize 是 200。因此,对于每个 RS,它分配了 200 个已经是 600 个的连接,如果 Atlas 为每个 RS 分配一个连接以进行监控,则它变为 603连接。
而且,上述原因解释了为什么我的 Atlas 的免费层级在几天后下降(不接受任何请求),连接数超过 500 个(允许的最大连接数限制)。
信用:Eric_Adam
【讨论】: