問題描述

在某些特定業務情境中,用戶端在提交某個請求後,需要等待伺服器處理超過 60 秒的時間才可以返迴響應,並且在處理完畢之前伺服器與用戶端沒有任何資料互動。

例如,您通過網頁上傳一個 Excel 表格,要求伺服器處理其中的資料(處理時間約需 3 分鐘),且在提交表格後 120 秒內,用戶端與伺服器之間沒有任何資料互動(HTTP 或者 TCP 報文)。這種情況下,WAF 會返回一個 504 逾時的響應給用戶端,同時中斷連線。

這是因為 WAF 不會維持超過 120 秒(沒有任何資料互動)的長串連,而且該七層逾時時間目前不支援修改。

解決方案

建議您修改這種請求的互動方式,讓這種長串連在 60s 內能有一些資料互動(如 ack 報文,心跳包,keep-alive 等任何可以維持會話的報文)。

鑒於使用者情境的多樣性,暫不提供代碼層級的修改建議,請開發人員結合自身業務特性進行調整。