簡體   English   中英

SocketTimeoutException:使用 NGINX 配置讀取超時

[英]SocketTimeoutException: Read timed out with NGINX configuration

我有以下設置:

curl >> NGINX >> Java Client >> ELB >> NGINX >> Java Server

常規請求按預期工作,超過 60 秒的請求失敗並顯示SocketTimeoutException: Read timed out 我試着一步一步調試:

  • 服務器以200響應,大約需要 100 秒
  • Nginx在服務器前記錄499 (客戶端停止連接)
  • Java 客戶端和 Nginx 日志400 :SocketTimeoutException:讀取超時

我嘗試減少導致504 Gateway timeout的兩個 Nginx 的proxy_read_limit ELB 的限制為 240 秒。

我無權訪問客戶端應用程序,因為它是 .jar,假設問題是 .jar 中的超時設置是否安全,因此我無法自己解決問題? 我也很難理解在這種情況下到底誰是客戶。

是的,聽起來像“Java Client”中的超時設置被設置為小於 100 秒。 如果客戶端寫得好,你也許可以通過參數或配置文件更改超時參數。 不知道細節是不可能多說的。

可以通過讓服務器發送“虛擬”數據包來解決此問題,這些數據包使連接對客戶端顯示為活動狀態。

暫無
暫無

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

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