2017-01-18 23 views
0

我正在使用nginx作爲負載均衡器(反向代理),一切看起來都很好。如何爲停止的後端主機配置Nginx上游

我想解決的問題是以某種方式使nginx瞭解上游後端服務器已關閉,不要向其發送請求。通過下來,我真的意味着沒有像這樣的服務器或關機。

案例1: 2上游定義的後端服務器,停止運行實例和1後端應用程序。與nginx相比,它明白它已關閉,並且不會在fail_timeout期間再次嘗試發送請求(默認10secs) - 這是可以接受的。

案例2: 2後臺服務器定義在上游,但1個實際運行實例。 Nginx仍然試圖平衡這些請求,比如它們都已啓動,並且不會將停止標記爲(不存在)後端標記爲不健康。在這種情況下,我收到504網關超時。

我想實現的是讓nginx像情況1一樣工作,並將後端標記爲不健康,無需接收504網關超時。

任何想法?配置選項?

回答

1

有關nginx配置的更多調查指示我指向此配置行。任何人都需要;

proxy_next_upstream error timeout http_504;