我在MySql中使用Slick 3.0,我的性能很差,我想对其进行优化。我用初始化数据库
val db = Database.forConfig("horridDBStuff")
然后在
application.conf
我有horridDBStuff = {
url = "jdbc:mysql://my.db.address:3306/myschema"
driver = "com.mysql.jdbc.Driver"
connectionPool = disabled
keepAliveConnection = true
properties = {
user = "me"
password = "me"
}
}
Slick文档说,在部署中,您应该启用连接池,所以这是我想要尝试的。然而,它并没有给出如何做到这一点的例子。我试过把这一行注释掉,或者用
connectionPool = enabled
或connectionPool = 10
替换。所有这些都只是一个多页错误堆栈崩溃光滑。有人知道如何正确配置连接池吗?(任何其他的性能建议也值得赞赏——我已经尝试添加了numThreads=10
,这似乎并没有改善很多东西,但至少不会使它崩溃;) 最佳答案
Slick 3.0默认使用HikariCP。关于它的project page有大量的文档可用于调整信息。只要您不介意使用HikariCP,就根本不需要connectionPool参数。
也就是说,您可以在application.conf中设置connectionPool=HikariCP,这样就不会抛出错误,尽管除了自我文档之外,这似乎是多余的。