国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
DNS負(fù)載均衡&&HTTP負(fù)載均衡

DNS負(fù)載均衡

最早的負(fù)載均衡技術(shù),利用域名解析實(shí)現(xiàn)負(fù)載均衡,在DNS服務(wù)器,配置多個(gè)A記錄,這些A記錄對應(yīng)的服務(wù)器構(gòu)成集群。大型網(wǎng)站總是部分使用DNS解析,作為第一級負(fù)載均衡。如下圖:

優(yōu)點(diǎn)

  1. 使用簡單:負(fù)載均衡工作,交給DNS服務(wù)器處理,省掉了負(fù)載均衡服務(wù)器維護(hù)的麻煩
  2. 提高性能:可以支持基于地址的域名解析,解析成距離用戶最近的服務(wù)器地址,可以加快訪問速度,改善性能;

缺點(diǎn)

  1. 可用性差:DNS解析是多級解析,新增/修改DNS后,解析時(shí)間較長;解析過程中,用戶訪問網(wǎng)站將失??;
  2. 擴(kuò)展性低:DNS負(fù)載均衡的控制權(quán)在域名商那里,無法對其做更多的改善和擴(kuò)展;
  3. 維護(hù)性差:也不能反映服務(wù)器的當(dāng)前運(yùn)行狀態(tài);支持的算法少;不能區(qū)分服務(wù)器的差異(不能根據(jù)系統(tǒng)與服務(wù)的狀態(tài)來判斷負(fù)載)

 實(shí)踐建議

將DNS作為第一級負(fù)載均衡,A記錄對應(yīng)著內(nèi)部負(fù)載均衡的IP地址,通過內(nèi)部負(fù)載均衡將請求分發(fā)到真實(shí)的Web服務(wù)器上。一般用于互聯(lián)網(wǎng)公司,復(fù)雜的業(yè)務(wù)系統(tǒng)不合適使用。如下圖:

HTTP負(fù)載均衡

Nginx是一個(gè)高性能的HTTP和反向代理服務(wù)器,

通過其本身的Upstream模塊,我們可以將其作為7層負(fù)載均衡服務(wù)器使用,其支持的負(fù)載均衡策略如下:

1,輪詢:將請求依次輪詢發(fā)給每個(gè)服務(wù)器

2,最少鏈接:將請求發(fā)送給持有最少活動鏈接的服務(wù)器

3,IP哈希:通過哈希函數(shù)決定請求發(fā)送給哪個(gè)服務(wù)器

4,權(quán)重:服務(wù)器的權(quán)重越高,處理請求的概率越大

系統(tǒng)整體結(jié)構(gòu)如下:

    

一. Nginx/ Haproxy比較

    早期版本Nginx只能在HTTP層負(fù)載,不支持TCP,經(jīng)過1.9和1.11兩個(gè)大版本的大躍進(jìn)般開發(fā),目前在功能和特性上,已經(jīng)大幅超越haproxy ,當(dāng)然haproxy也有自己的長處。

比如:

stream module:同時(shí)支持TCP和UDP,也支持haproxy的proxy protocol。

stream module的TLS卸載:可以把TLS在nginx卸載掉,后端只需要跑http或者明文tcp流。得益于nginx的多進(jìn)程和對TLS硬件加速卡的支持,對于大流量網(wǎng)站這是非常重要的功能。

SNI Preread:基于SNI協(xié)議的host頭做負(fù)載均衡。在一些特殊場合很有用處,比如嚴(yán)格管理私鑰的場景,也可以在不改動現(xiàn)有架構(gòu)的場景下,由nginx統(tǒng)一調(diào)度流量。

IP Transparency:對這個(gè)功能沒實(shí)際測試過。看官方文檔應(yīng)該類似SNAT和DNAT的功能。相比Linux的NAT功能,nginx能做的更多,比如負(fù)載均衡、url路由等等。

TLS:雙證書、HTTP/2、TLS v1.3(1.13版)
gnu/linux的新特性的利用:fastopen, SO_REUSEPORT, IP_BIND_ADDRESS_NO_PORT

緩存模塊的切片模塊

而且,nginx還有幾個(gè)大殺器:map模塊、lua、js和shared memory。

1)HAProxy對于后端服務(wù)器一直在做健康檢測(就算請求沒過來的時(shí)候也會做健康檢查):
后端機(jī)器故障發(fā)生在請求還沒到來的時(shí)候,haproxy會將這臺故障機(jī)切掉,但如果后端機(jī)器故障發(fā)生在請求到達(dá)期間,那么前端訪問會有異常。也就是說HAProxy會把請求轉(zhuǎn)到后端的這臺故障機(jī)上,并經(jīng)過多次探測后才會把這臺機(jī)器切掉,并把請求發(fā)給其他正常的后端機(jī),這勢必會造成一小段時(shí)間內(nèi)前端訪問失敗。
2)Nginx對于后端的服務(wù)器沒有一直在做健康檢測:
后端機(jī)器發(fā)生故障,在請求過來的時(shí)候,分發(fā)還是會正常進(jìn)行分發(fā),只是請求不到數(shù)據(jù)的時(shí)候,它會再轉(zhuǎn)向好的后端機(jī)器進(jìn)行請求,直到請求正常為止。也就是說Nginx請求轉(zhuǎn)到后端一臺不成功的機(jī)器的話,還會再轉(zhuǎn)向另外一臺服務(wù)器,這對前端訪問沒有什么影響。
3)因此,如果有用HAProxy做為前端負(fù)載均衡的話 ,如果后端服務(wù)器要維護(hù),在高并發(fā)的情況,肯定是會影響用戶的。但如果是Nginx做為前端負(fù)載均衡的話,只要并發(fā)撐得住,后端切掉幾臺不會影響到用戶。


一. Nginx / LVS 轉(zhuǎn)發(fā)策略

LVS采用的是同步請求轉(zhuǎn)發(fā)的策略。同步轉(zhuǎn)發(fā)是在lvs服務(wù)器接收到請求之后,立即redirect到一個(gè)后端服務(wù)器,由客戶端直接和后端服務(wù)器建立連接。

Nginx采用的是同步請求轉(zhuǎn)發(fā)的策略。異步轉(zhuǎn)發(fā)是nginx在保持客戶端連接的同時(shí),發(fā)起一個(gè)相同內(nèi)容的新請求到后端,等后端返回結(jié)果后,由nginx返回給客戶端。

在其它的均衡器(lvs/haproxy/apache等)里,每個(gè)請求都是只有一次機(jī)會的,假如用 戶發(fā)起一個(gè)請求,結(jié)果該請求到達(dá)后臺服務(wù)器后,后臺服務(wù)器剛好掛掉了,那么這個(gè)請求就失敗了;而nginx因?yàn)槭钱惒降?,所以這個(gè)請求可以重新發(fā)往下一個(gè)后臺,下一個(gè) 后臺返回了正常的數(shù)據(jù),于是這個(gè)請求就能成功了。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
nginx  lvs  haproxy比較
高并發(fā)解決方案--負(fù)載均衡
Nginx負(fù)載均衡的4種方案配置實(shí)例
統(tǒng)一接入層方案
LB+HA
LVS、Nginx負(fù)載分衡構(gòu)建實(shí)戰(zhàn),以及應(yīng)用性能對比
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服