nginx后端服務器健康檢測 haproxy能夠代替nginx嗎?
haproxy能夠代替nginx嗎?基本上可以更換。兩者之間的主要區(qū)別是haproxy將始終在后端服務器上執(zhí)行運行狀況檢測,而ng不會。后端機器故障發(fā)生在請求到達之前:haproxy:機器將被切斷,但
haproxy能夠代替nginx嗎?
基本上可以更換。
兩者之間的主要區(qū)別是haproxy將始終在后端服務器上執(zhí)行運行狀況檢測,而ng不會。
后端機器故障發(fā)生在請求到達之前:
haproxy:機器將被切斷,但如果在請求到達期間發(fā)生后端機器故障,則前端訪問將異常。也就是說,haproxy會將請求發(fā)送到后端機,經(jīng)過多次檢測,它會切斷機器,并將請求發(fā)送到其他正常的后端機,這勢必會在短時間內(nèi)造成前端訪問失敗。
Nginx:當請求到來時,分發(fā)將繼續(xù)正常分發(fā),但是當請求無法到達數(shù)據(jù)時,它將轉(zhuǎn)向一個好的后端機器發(fā)出請求,直到請求正常為止。換句話說,如果nginx請求到達后端的一臺不成功的機器,它將到達另一臺服務器,這對前端訪問沒有影響。
所以在高并發(fā)的情況下,haproxy比nginx稍微差一點。
Nginx可以給ElasticSearch集群帶來什么福利?
1. 記錄每個API訪問請求的日志。(elasticsearch本身不支持此功能,只支持slowlog和服務日志)
2。它支持大量的客戶端連接。建議在ES官方博客中使用keep alive,并在nginx和ES之間使用長連接。我理解它是因為es通常是架構(gòu)的底層,而固定的上層服務用于訪問它。這種情況適合使用keep-alive。(事實上,nginx可以支持更多的客戶端連接,無論是否保持活動狀態(tài))
3。負載平衡請求彈性搜索服務器。
4. 緩存數(shù)據(jù),減少相同的內(nèi)容并再次請求elasticsearch服務器。
5. 提供主動健康檢測(僅限nginx plus),不斷檢測后端彈性搜索服務器是否正常,并主動切換。(當ES失敗時,nginx不向該節(jié)點分發(fā)請求,當該節(jié)點恢復正常時,它將自動返回)
6。報告豐富的監(jiān)控指標(僅nginx plus)以提供監(jiān)控和管理。
7. 安全驗證。只有具有帳戶名和密碼的客戶端才能訪問es群集。
8. 對于特殊接口,如“”來限制訪問。(此功能非常實用)
9。具有角色的訪問控制(例如,用戶角色具有數(shù)據(jù)訪問權限,管理員角色具有群集控制權限)