我正在使用 grails 3.3.9 构建一个示例 hello 应用程序。部署应用程序后,它可以正常工作。当我在一天左右后检查时,应用程序已经崩溃了。检查日志,我看到一个错误“连接关闭后不允许操作。”。看起来在某些时候mysql数据库连接断开了。
这是我在 application.yml 中使用的数据库配置
我很欣赏任何关于为什么在一段时间后自动关闭与数据库的连接的见解。我该如何预防?感谢您的反馈。
我正在使用 grails 3.3.9 构建一个示例 hello 应用程序。部署应用程序后,它可以正常工作。当我在一天左右后检查时,应用程序已经崩溃了。检查日志,我看到一个错误“连接关闭后不允许操作。”。看起来在某些时候mysql数据库连接断开了。
这是我在 application.yml 中使用的数据库配置
我很欣赏任何关于为什么在一段时间后自动关闭与数据库的连接的见解。我该如何预防?感谢您的反馈。
我为生产添加了以下内容,到目前为止该错误没有再次发生。
properties:
jmxEnabled: true
initialSize: 5
maxActive: 50
minIdle: 5
maxIdle: 25
maxWait: 10000
maxAge: 600000
timeBetweenEvictionRunsMillis: 5000
minEvictableIdleTimeMillis: 60000
validationQuery: SELECT 1
validationQueryTimeout: 3
validationInterval: 15000
testOnBorrow: true
testWhileIdle: true
testOnReturn: false
jdbcInterceptors: ConnectionState
defaultTransactionIsolation: 2 # TRANSACTION_READ_COMMITTED