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

C4s*_*tor 5 scala slick

我有一个经典的 Spray+slick http 服务器,它是我的数据库访问层,我希望能够有一个运行状况检查路由来确保我的服务器仍然能够访问我的数据库。

我可以通过执行通用 sql 查询来做到这一点,但我想知道是否有更好的方法来检查连接是否活动且可用,而不实际在数据库上添加负载(或至少是最小可能的负载)。

差不多了: val db = Database.forConfig("app.mydb") [...] db.???? // Do the check here

Ale*_*and 2

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

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