您好,登錄后才能下訂單哦!
縱向分離(分層后分離):將業(yè)務(wù)處理流程上的不同部分分離部署,實(shí)現(xiàn)系統(tǒng)伸縮性。
橫向分離(業(yè)務(wù)分割后分離):將不同的業(yè)務(wù)模塊分離部署,實(shí)現(xiàn)系統(tǒng)伸縮性。
將不同功能分離部署可以實(shí)現(xiàn)一定程度的伸縮性,但是隨著網(wǎng)站的訪問量逐步增加,即使分離到最小粒度的獨(dú)立部署,單一的服務(wù)器也不能滿足業(yè)務(wù)規(guī)模的要求。因此必須使用服務(wù)器集群,即將相同服務(wù)部署在多態(tài)服務(wù)器上構(gòu)成一個(gè)集群整體對(duì)外提供服務(wù)。
利用 HTTP 重定向協(xié)議實(shí)現(xiàn)負(fù)載均衡。
這種負(fù)載均衡方案的優(yōu)點(diǎn)是比較簡(jiǎn)單。缺點(diǎn)是瀏覽器需要兩次請(qǐng)求服務(wù)器才能完成一次訪問,性能較差:重定向服務(wù)器自身的處理能力有可能成為瓶頸,整個(gè)集群的伸縮性規(guī)模有限;使用 HTTP 302 響應(yīng)碼重定向,可能使搜索引擎判斷為 SEO 作弊,降低搜索排名。
利用 DNS 處理域名解析請(qǐng)求的同時(shí)進(jìn)行負(fù)載均衡處理的一種方案。
在 DNS 服務(wù)器中配置多個(gè) A 記錄,如:
114.100.40.1 www.mysite.com114.100.40.2 www.mysite.com114.100.40.3 www.mysite.com
每次域名解析請(qǐng)求都會(huì)根據(jù)負(fù)載均衡算法計(jì)算一個(gè)不同的 IP 地址返回,這樣 A 記錄中配置的多個(gè)服務(wù)器就構(gòu)成一個(gè)集群,并可以實(shí)現(xiàn)負(fù)載均衡。
DNS 域名解析負(fù)載均衡的優(yōu)點(diǎn):
DNS 域名解析負(fù)載均衡的缺點(diǎn):
大多數(shù)反向代理服務(wù)器同時(shí)提供反向代理和負(fù)載均衡的功能。
反向代理服務(wù)器的優(yōu)點(diǎn)是部署簡(jiǎn)單。缺點(diǎn)是反向代理服務(wù)器時(shí)所有請(qǐng)求和響應(yīng)的中轉(zhuǎn)站,其性能可能會(huì)成為瓶頸。
在網(wǎng)絡(luò)層通過修改請(qǐng)求目標(biāo)地址進(jìn)行負(fù)載均衡。負(fù)載均衡服務(wù)器(網(wǎng)關(guān)服務(wù)器)在操作系統(tǒng)內(nèi)核獲取網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)負(fù)載均衡算法計(jì)算得到一臺(tái)真實(shí) Web 服務(wù)器 10.0.0.1,然后將目的 IP 地址修改為 10.0.0.1,不需要通過用戶進(jìn)程。真實(shí) Web 服務(wù)器處理完成后,響應(yīng)數(shù)據(jù)包回到負(fù)載均衡服務(wù)器,負(fù)載均衡服務(wù)器再將數(shù)據(jù)包原地址修改為自身的 IP 地址(114.100.80.10)發(fā)送給瀏覽器。
IP 負(fù)載均衡在內(nèi)核完成數(shù)據(jù)分發(fā),所以處理性能優(yōu)于反向代理負(fù)載均衡。但是因?yàn)樗姓?qǐng)求響應(yīng)都要經(jīng)過負(fù)載均衡服務(wù)器,集群的最大響應(yīng)數(shù)據(jù)吞吐量受制于負(fù)載均衡服務(wù)器網(wǎng)卡帶寬。
數(shù)據(jù)鏈路層負(fù)載均衡是指在通信協(xié)議的數(shù)據(jù)鏈路層修改 mac 地址進(jìn)行負(fù)載均衡。
這種方式又稱作三角傳輸方式,負(fù)載均衡數(shù)據(jù)分發(fā)過程中不修改 IP 地址,只修改目的 mac 地址,通過配置真實(shí)物理服務(wù)器集群所有機(jī)器虛擬 IP 和負(fù)載均衡服務(wù)器 IP 地址一致,從而達(dá)到不修改數(shù)據(jù)包的源地址和目的地址就可以進(jìn)行數(shù)據(jù)分發(fā)的目的,由于實(shí)際處理請(qǐng)求的真實(shí)物理服務(wù)器 IP 和數(shù)據(jù)請(qǐng)求目的 IP 一致,不需要通過負(fù)載均衡服務(wù)器進(jìn)行地址轉(zhuǎn)換,可將響應(yīng)數(shù)據(jù)包直接返回給用戶瀏覽器,避免負(fù)載均衡服務(wù)器網(wǎng)卡帶寬成為瓶頸。這種負(fù)載方式又稱作直接路由方式。
在 Linux 平臺(tái)上最好的鏈路層負(fù)載均衡開源產(chǎn)品是 LVS(Linux Virtual Server)。
負(fù)載均衡服務(wù)器的實(shí)現(xiàn)可以分為兩個(gè)部分:
負(fù)載均衡算法通常有以下幾種:
一致性 HASH 算法
一般而言,Nosql 不支持 SQL 和 ACID,但是強(qiáng)化了對(duì)于高可用和伸縮性的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。