在Nginx中,可以使用proxy_connect_timeout
和proxy_read_timeout
設置接口超時時間。
proxy_connect_timeout
用來設置與后端服務器建立連接的超時時間,即連接超時時間。
proxy_read_timeout
用來設置接收后端服務器響應的超時時間,即讀取響應超時時間。
可以在Nginx的配置文件中為特定的location或upstream設置超時時間。例如:
location /api {
proxy_pass http://backend_server;
proxy_connect_timeout 5s;
proxy_read_timeout 10s;
}
在上面的例子中,當訪問/api
接口時,Nginx會將請求轉發給backend_server
,并設置連接超時時間為5秒,讀取響應超時時間為10秒。
需要注意的是,連接超時時間僅在建立連接時生效,讀取響應超時時間在連接建立后開始計時。
另外,如果后端服務器在超時時間內未返回響應,Nginx會返回504 Gateway Timeout錯誤給客戶端。可以通過設置proxy_next_upstream
來嘗試轉發到其他后端服務器,以避免單點故障。