Scala 如何执行一个;“我可以访问我的数据库”;健康检查?

Scala 如何执行一个;“我可以访问我的数据库”;健康检查?,scala,slick,Scala,Slick,我有一个经典的spray+slick http服务器,它是我的数据库访问层,我希望能够有一个healthcheck路由,以确保我的服务器仍然能够访问我的数据库 我可以通过执行一般的sql查询来实现这一点,但我想知道是否有更好的方法来检查连接是否处于活动状态和可用状态,而无需在数据库上实际添加负载(或者至少是最小可能的负载) 差不多: val db=Database.forConfig(“app.mydb”) [...] db.??//在这里结账 为什么要避免对数据库执行查询 我认为最好的健康检

我有一个经典的spray+slick http服务器,它是我的数据库访问层,我希望能够有一个healthcheck路由,以确保我的服务器仍然能够访问我的数据库

我可以通过执行一般的sql查询来实现这一点,但我想知道是否有更好的方法来检查连接是否处于活动状态和可用状态,而无需在数据库上实际添加负载(或者至少是最小可能的负载)

差不多:

val db=Database.forConfig(“app.mydb”)
[...]
db.??//在这里结账

为什么要避免对数据库执行查询


我认为最好的健康检查是像应用程序那样实际使用数据库(实际连接并运行查询)。考虑到这一点,您可以对您的数据库执行
SELECT 1
,并验证它是否相应地响应。

嗯,对我来说,执行一个对结果不感兴趣的查询似乎是一种开销。出于监控目的,它会稍微扭曲我的一些db指标。但我最终可能会这么做。