我使用Spring版本2.0.2来制作带有默认连接池HikariCP的web应用程序。HikariCP调试日志显示收集连接大小类似于2,但是spring启动指标显示连接创建为1。
我误解了吗?提前谢谢。
application.yml如下所示
spring:
datasource:
minimum-idle: 2
maximum-pool-size: 7日志:
DEBUG 8936 --- [l-1 housekeeper] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - After cleanup stats (total=2, active=0, idle=2, waiting=0)度量的URL:http://localhost:8080/xxx/metrics/hikaricp.connections.creation
响应:
{
name: "hikaricp.connections.creation",
measurements:
[
{
statistic: "COUNT",
value: 1 <--- I think this should be 2
},
...
]
}发布于 2018-05-30 21:36:18
您所看到的是HikariCPs 故障快速检查行为在现阶段的跟踪度量方面。
(事实上,我是在事先不知道答案的情况下研究这个问题的)
在这个阶段,还没有设置MetricsTracker,因此不计算初始连接创建。如果可以建立初始连接,则HikariCP只保留此连接。在您的情况下,只计算下一个连接创建。
如果您真的希望度量值是“正确的”,您可以设置spring.datasource.hikari.initialization-fail-timeout=-1。这种行为在initializationFailTimeout下被描述在HikariCPs自述中。
如果你真的需要一个“正确的”值是有争议的,因为你只会错过最初的计数。理想情况下,您希望在特定的时间窗口中对连接创建进行推理--例如,每分钟创建连接的速率,以确定是否过早地从池中释放连接。
https://stackoverflow.com/questions/50533093
复制相似问题