tcp 模式的 HAProxy 預設配置
我們已經在多個 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 client <timeout> or timeout clitimeout <timeout> (deprecated)
在客戶端設置最長不活動時間。timeout server <timeout> or timeout srvtimeout <timeout>
(已棄用)在伺服器端設置最長不活動時間。未指定的超時會導致無限超時,不建議這樣做。這種用法被接受並且有效,但在啟動期間會報告警告,因為如果系統的超時也未配置,它可能會導致系統中的過期會話累積。
timeout http-keep-alive <timeout>
這是設置等待新 HTTP 請求出現的最大允許時間
如果沒有設置這個參數,“http-request”超時,如果兩者都沒有設置,“超時客戶端”仍然適用於較低級別。需要在前端設置才能生效,除非前端是TCP模式,這種情況下會使用HTTP後端的超時時間。