为什么hikari连接池在接收到多个同时请求时仅使用1个或2个连接?

时间:2019-07-04 09:28:27

标签: spring-boot connection-pooling hikaricp spring-mybatis

Hikari池看起来像在池中的​​许多连接中仅使用1个或2个连接。我不知道为什么?

我们的服务在启动我的服务时使用hikari连接池。 最大池大小50 connectTimeout 3000

,我从jmeter发送了100个请求到我们的服务并监视mysql进程列表。 mysql进程是100进程。 但是只能使用2个连接。这其他人正在睡觉。 为什么连接池仅使用2个? Hikari池中有任何配置吗?

1 个答案:

答案 0 :(得分:0)

或者您正在MySQL中测量此错误,或者应用程序不需要更多连接,您可以减小池的大小。如果不确定,应该通过调试一个单一的并发用户来检查JMeter测试用例,以证明它在达到100个并发用户之前可以达到您的期望。

使用类似HikariCP的池,您的应用程序代码将得到一个代理Connection对象,该对象是每次调用DataSource.getConnection()时维护的物理Connection对象。如果您的应用程序的交易期限很短,例如快速SELECT ... FROM ...语句的新事务物理连接利用率可能很低。