簡體   English   中英

Azure虛擬機上來自Postgresql的連接斷開

[英]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

  • 最小空閑:1
  • 最大池大小:3
  • 連接測試查詢:SELECT 1
  • connection-init-sql:SELECT 1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM