[英]Connection drop from postgresql on azure virtual machine
我對postgresql db有點陌生。 我已經通過Azure Cloud為我的PostgreSQL數據庫完成了設置。
這是具有PostgreSQL 9.6版本的Ubuntu 18.04 LTS(4vCPU,8GB RAM)計算機。
發生的問題是當與PostgreSQL數據庫的連接保持空閑一段時間(例如2到10分鍾)時,與數據庫的連接沒有響應,因此無法滿足請求並繼續處理查詢。
我的JAVA Spring-boot應用程序也是如此。 連接不響應,查詢繼續處理。
這是隨機發生的,因此計時無法追溯,有時會在2分鍾內發生,有時會在10分鍾內發生,有時則不會。
我嘗試使用PostgreSQL配置文件參數。 我努力了:
tcp_keepalive_idle,tcp_keepalive_interval,tcp_keepalive_count。
也是statement_timeout和session_timeout參數,但無論如何都不會改變。
任何建議或幫助都是可取的。
謝謝
如果要在Azure VM上設置PostgreSQL數據庫連接,則必須注意存在“未綁定”和“出站”連接超時。 根據https://docs.microsoft.com/zh-CN/azure/load-balancer/load-balancer-outbound-connections#idletimeout ,出站連接有4分鍾的空閑超時。 此超時不可調整。 對於入站時間,可以選擇在Azure門戶上進行更改。
我們遇到了類似的問題,並且能夠在客戶端解決它。 我們更改了Spring-boot默認的Hikari配置,如下所示:
阿光:
連接超時:20000
驗證超時:20000
空閑超時:30000
最長壽命:40000
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.