我在資料庫中得到了很多不活躍的會話,這不僅占用了所有的資源,而且還導致資料庫偶爾崩潰,需要我重新啟動它。
我正在使用帶有 kotlin 的 jooq,這是我建立連接的方法。
@Component
class EstDBConnection(private val cfg: DatabaseConfig, private val jooqExecuteListener: PromJooqExecuteListener) {
init {
cfg.migrateFlyway()
}
fun <T> acquire(f。(DSLContext) -> T): T{
return DSL.using(DriverManager.getConnection(cfg.url, cfg.username, cfg.password), SQLDialect.ORACLE10G) .use {
jooqExecuteListener.attach(it)
f(it)
}
}
}
uj5u.com熱心網友回復:
你從未關閉過你所創建的連接。請使用一個連接池(例如:HikariCP)來管理你的連接。除非你寫一個簡單的批處理腳本,或者一些概念證明,否則你不應該直接使用DriverManager.getConnection
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/319172.html
標籤:
