Linux

tcp 模式的 HAProxy 預設配置

  • August 12, 2019

我們已經在多個 HTTPS 應用程序伺服器前面設置了一個 TCP 模式的 HAProxy。到目前為止一切正常,但想詢問這些設置。在我的預設部分中,我有以下設置,我已將其註釋掉(關閉):

# timeout http-request 10s
# timeout queue        1m
# timeout connect      10s
# timeout client       1m
# timeout server       1m
# timeout http-keep-alive 10s
...

通過關閉這些,是否將它們設置為無窮大?它是否只是選擇一些預設值?我很難找出它到底做了什麼。

我想暫時關閉這些限制,因此希望將它們評論出來。不過,我很想得到確認,所以非常感謝任何幫助。

timeout http-request <timeout>

這是設置等待完整 HTTP 請求的最大允許時間

如果未設置此參數,客戶端超時仍然適用於傳入請求的每個塊之間。需要在前端設置才能生效,除非前端是TCP模式,這種情況下會使用HTTP後端的超時時間。

有關更多詳細資訊,請查看HAProxy 配置手冊的 超時 http-request 部分

timeout queue <timeout>

這是為了設置在隊列中等待連接槽空閒的最長時間

如果未指定,則使用與後端連接超時(“超時連接”)相同的值,以向後兼容沒有“超時隊列”參數的舊版本。有關更多詳細資訊,請查看HAProxy 配置手冊的 超時隊列部分。

timeout connect <timeout> or timeout contimeout <timeout> (deprecated)

這是設置等待與伺服器的連接嘗試成功的最長時間

未指定的超時會導致無限超時,不建議這樣做。這種用法被接受並且有效,但在啟動期間會報告警告,因為如果系統的超時也未配置,它可能會導致系統中的失敗會話累積。有關更多詳細資訊,請查看HAProxy 配置手冊的 超時連接部分。

為了

未指定的超時會導致無限超時,不建議這樣做。這種用法被接受並且有效,但在啟動期間會報告警告,因為如果系統的超時也未配置,它可能會導致系統中的過期會話累積。

timeout http-keep-alive <timeout>

這是設置等待新 HTTP 請求出現的最大允許時間

如果沒有設置這個參數,“http-request”超時,如果兩者都沒有設置,“超時客戶端”仍然適用於較低級別。需要在前端設置才能生效,除非前端是TCP模式,這種情況下會使用HTTP後端的超時時間

引用自:https://serverfault.com/questions/978810