的HikariCP文件說:如何在拋出SQLTransientConnectionException時知道我的HikariCP池是否真的耗盡?
connectionTimeout:此屬性控制毫秒客戶端將等待從池中的連接的最大數目。如果在沒有可用連接的情況下超過此時間,則會拋出SQLException。
通過測試,我看到SQLTransientConnectionException
在這種情況下拋出。
如果我的游泳池耗盡,我會得到這個例外。 如果我的數據庫主機與網絡斷開連接,則會發生此異常。 如果我的數據庫實例服務停止,我得到這個異常。
問題是,不管什麼原因,池總是會拋出這個異常與相同的消息。
這樣我就不能通知用戶發生了什麼事情。如果游泳池真的耗盡(負荷很重的正常情況),應該通知用戶並要求稍後再試。
但是,如果我的數據庫服務器關閉,這是一個不同的故事,並應該相應地通知用戶。
他改變了一件事,但沒有改變另一件事。這夠了嗎? – Gustavo
隨着這種變化,你應該能夠取得進步。 如果您面臨超時例外,並且出現下一個例外,但連接創建失敗,請報告'719' 我希望這是可以接受的答案 – Nitin