我的Vaadin 8 + Spring Boot应用程序出现性能问题。
当我长时间不使用而启动应用程序时(例如在一夜之后),需要花费几分钟才能从数据库获得响应。
我有以下应用程序设置:
spring.datasource.max-active=10
spring.datasource.initial-size=5
spring.datasource.max-idle=5
spring.datasource.min-idle=1
spring.datasource.test-while-idle=true
spring.datasource.test-on-borrow=true
spring.datasource.validation-query=SELECT 1
spring.datasource.time-between-eviction-runs-millis=5000
spring.datasource.min-evictable-idle-time-millis=60000
在没有test-while-idle
,validation-query
和test-on-borrow
的情况下,我什至无法再次重新连接到数据库,但是性能问题仍然存在。
答案 0 :(得分:0)
这看起来像是JDBC连接,一直处于空闲状态,直到在TCP / IP级别上已超时。我想知道是否有一种设置可以在未使用2分钟后自动关闭JDBC连接。或者是一个心跳设置,它将在所有JDBC连接上每5分钟发出一次SELECT 1
,以使其保持活动状态。