如何配置数据库连接池

2022-11-02 23:06:33 +08:00
 WoodenTea

根据 HikariCP 文档 最优的数据库连接池的公式为 (core_count * 2) + effective_spindle_count

我有两个疑问

  1. 这个公式是服务器上运行的数据库连接数量还是单个服务连接数据库的数量?

  2. 现在应用使用微服务方案,在访问量高的时候,服务会自动启动多个实例,那每个实例的连接池数量应该怎么设置?

假设我的数据库运行在 4 核 2 个 SSD 的服务器上,按照公式最优的连接池数量是 4 * 2 + 2 = 10

1064 次点击
所在节点    程序员
4 条回复
hefish
2022-11-02 23:08:24 +08:00
别拘泥于公式,主要看疗效。
WoodenTea
2022-11-02 23:13:27 +08:00
@hefish 基础知识我还是要补上呀
7911364440
2022-11-03 10:47:18 +08:00
CPU 密集型场景:核心数+1
IO 密集型场景:核心数 * [1 + (IO 耗时 / CPU 耗时)]
WoodenTea
2022-11-03 15:51:53 +08:00
@7911364440 是运行数据库服务器的的核心数嘛?不是运行服务的核心数嘛

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/892231

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX