gpt4 book ai didi

spring - HikariConfig 和 maxPoolSize

转载 作者:行者123 更新时间:2023-11-29 11:24:20 25 4
gpt4 key购买 nike

我使用 HikariConfig 作为 spring 服务器上 postgres 数据库的数据源。我应该设置 maxPoolSize 吗? (默认值为 -1)我可以使用多少池大小?是否与硬件有任何依赖关系?

最佳答案

maxPoolSize 是一个指示器,作为您的应用程序的限制。您应该根据流量/应用程序的开销/硬件来计算。 F.E 您可以将限制设置为 10000 个连接,这并不意味着它将按预期运行。实际上这会受到您的硬件的影响,因为如果您的机器包含一个核心,那么 100000 个事件连接只会拉伸(stretch) java 应用程序和 postgres,因为操作系统将难以处理所有这些 I/O 调用。更糟糕的是,如果数据库和 java 应用程序位于同一网络中的不同机器上,您还会有网络开销。

真正优化性能的是 minimumIdle 属性和 idleTimeout ,所以如果你已经为它们计算了一个合适的值,那么它永远不会达到 >maxConnection 值以及由于锁等待或资源匮乏导致的开销。这里唯一不好的是,如果您的应用程序设计错误(例如,保持连接的时间超过需要的时间,没有正确提交事务,没有使用批处理作业进行长时间操作),那么它将影响用户的体验,但这是另一个问题.

我)

Should I set up maxPoolSize? (default value is -1)


您应该将其设置为全局限制,以便您的应用程序和数据库都可维护且健康。默认值不是 -1,而是 10。更多详细信息 here

二)

How much pool size can i use?


这取决于您的应用程序和基础架构。获得这些数字的唯一方法是对最复杂的用例进行集成测试。一些信息here关于 postgres 调整

三)

Are there any dependencies with hardware?


是的,对于 JVM 和 Postgres 服务器,不仅从硬件的角度来看,还有您可能选择的操作系统

关于spring - HikariConfig 和 maxPoolSize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38962138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com