如何最好地檢查 Web 伺服器與資料庫的連接?

如何最好地檢查 Web 伺服器與資料庫的連接?

我們的 IT 管理員要求在我們的 Web 應用程式中提供一個 api 端點來用作運行狀況檢查。 api 中的邏輯應該執行任何簡單的資料庫查詢,以確保 Web 伺服器可以連接到資料庫。這個想法是,此 api 呼叫失敗可以觸發 Web 伺服器的自動停用等。

這肯定會起作用,但看起來有點像自製的。有沒有更好的方法使用開箱即用的工具等來實現這一目標?我們使用 Microsoft 堆疊,因此 Web 框是 IIS 8,資料庫是 SQL 2014。

答案1

您可以按照您的建議進行操作,但是您需要從「某個地方」定期進行 api 呼叫。在資料庫關閉和下一次 ping 偵測到它之間的時間內,您仍然會出現不良行為。

另一種解決方案是在全域處理程序中捕獲錯誤。 (在ASP.NET 中,您可以在Global.asax 文件中執行此操作。)如果您願意,您可以檢查錯誤並獲得相當詳細的信息,例如在與資料庫的連接逾時時採取一項操作,或者採取另一項操作如果連線有效但有權限錯誤。請注意,如果其他原因沒有先處理資料庫連線錯誤,則只會將其傳送給全域處理程序。

建議:嘗試將「你對此做什麼」部分作為一個獨立於檢測方法的機制。這樣,您甚至可以實現這兩個想法或第三個想法,並分享相同的結果行動。

相關內容