如何使用nginx配置負載均衡
??一、upstream配置
??在http配置下增加upstream配置即可:
??upstream nodes {
??server 192.168.10.1:8668;
??server 192.168.10.2:8668;
??}
??upstream對配置的上游服務(wù)器按照默認的輪詢方式進行請求。如果上游服務(wù)器掛掉,能自己主動剔除,無需手動干預(yù)。這種方式簡單快捷。但是如果上游服務(wù)器在配置不均衡的情況下,是解決不了的。所以nginx有其他很多的配置項。下面就一一介紹一下。
??二、權(quán)重配置
??weight和請求數(shù)量成正比,主要用于上游服務(wù)器配置不均衡的情況。下面的配置中,192.168.10.2機器的請求量是192.168.10.1機器請求量的2倍。
??upstream nodes {
??server 192.168.10.1:8668 weight=5;
??server 192.168.10.2:8668 weight=10;
??}
??三、ip_hash配置
??每一個請求按照請求的ip的hash結(jié)果分配。這樣每一個請求固定落在一個上游服務(wù)器,能夠解決ip會話在同一臺服務(wù)器的問題。
??upstream nodes {
??ip_hash;
??server 192.168.10.1:8668;
??server 192.168.10.2:8668;
??}
??四、fair配置
??按上游服務(wù)器的響應(yīng)時間來分配請求。響應(yīng)時間短的優(yōu)先分配。
??upstream nodes {
??server 192.168.10.1:8668;
??server 192.168.10.2:8668;
??fair;
??}
??五、url_hash配置
??按照訪問的url的hash結(jié)果來分配請求,使每一個url定向到同一個上游服務(wù)器。注意:在upstream中加入hash語句。server語句中不能寫入weight等其他的參數(shù),hash_method是使用的hash算法。
??upstream nodes {
??server 192.168.10.1:8668;
??server 192.168.10.2:8668;
??hash $request_uri;
??hash_method crc32;
??}
??六、下面再說下在upstream中常用的配置項
??down:表示當前的server不參與負載均衡。
??weight:默覺得1,weight越大,負載的權(quán)重就越大。
??max_fails :請求失敗的次數(shù)默覺得1。
??fail_timeout : max_fails次失敗后,暫停請求此臺服務(wù)器的時間。
??backup: 其他全部的非backup機器down或者忙的時候,請求backup機器。所以這臺機器壓力會最輕。
??upstream nodes {
??ip_hash;
??server 192.168.10.1:8668 down;
??server 192.168.10.2:8668 weight=2;
??server 192.168.10.3:8668;
??server 192.168.10.4:8668 backup;
??}
??如果您希望提高Web應(yīng)用程序的性能和可用性,那么設(shè)置負載均衡器絕對值得考慮。使用nginx進行負載均衡功能強大且設(shè)置相對簡單,并且與簡單的加密解決方案(例如Let's Encrypt客戶端)一起使用,它為您的Web場提供了一個很好的前端。雖然使用多個主機可以保護您的Web服務(wù)具有冗余,但負載均衡器本身仍然可能單點故障。您可以通過在多個nginx之間設(shè)置浮動IP來進一步提高高可用性。小伙伴們要想獲得更多nginx配置負載均衡的內(nèi)容,請關(guān)注新網(wǎng)!
聲明:免責聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認相關(guān)法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)
送郵件至:operations@xinnet.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時
需注明出處:新網(wǎng)idc知識百科