HTTP重定向負(fù)載均衡當(dāng)用戶發(fā)來請求的時(shí)候,Web服務(wù)器通過修改HTTP響應(yīng)頭中的Location標(biāo)記來返回一個(gè)新的url,然后瀏覽器再繼續(xù)請求這個(gè)新url,實(shí)際上就是頁面重定向。通過重定向,來達(dá)到“負(fù)載均衡”的目標(biāo)。例如,我們在下載JAVA源碼包的時(shí)候,點(diǎn)擊下載鏈接時(shí),為了解決不同國家和地域下載速度的問題,它會(huì)返回一個(gè)離我們近的下載地址。重定向的HTTP返回碼是302。優(yōu)點(diǎn):比較簡單。缺點(diǎn):瀏覽器需要兩次請求服務(wù)器才能完成一次訪問,性能較差。重定向服務(wù)自身的處理能力有可能成為瓶頸,整個(gè)集群的伸縮性國模有限;使用HTTP302響應(yīng)碼重定向,有可能使搜索引擎判斷為SEO作弊,降低搜索排名。DNS域名解析負(fù)載均衡DNS(Domain Name System)負(fù)責(zé)域名解析的服務(wù),域名url實(shí)際上是服務(wù)器的別名,實(shí)際映射是一個(gè)IP地址,解析過程,就是DNS完成域名到IP的映射。而一個(gè)域名是可以配置成對應(yīng)多個(gè)IP的。因此,DNS也就可以作為負(fù)載均衡服務(wù)。事實(shí)上,大型網(wǎng)站總是部分使用DNS域名解析,利用域名解析作為第一級負(fù)載均衡手段,即域名解析得到的一組服務(wù)器并不是實(shí)際提供Web服務(wù)的物理服務(wù)器,而是同樣提供負(fù)載均衡服務(wù)的內(nèi)部服務(wù)器,這組內(nèi)部負(fù)載均衡服務(wù)器再進(jìn)行負(fù)載均衡,將請求分發(fā)到真是的Web服務(wù)器上。優(yōu)點(diǎn):將負(fù)載均衡的工作轉(zhuǎn)交給DNS,省掉了網(wǎng)站管理維護(hù)負(fù)載均衡服務(wù)器的麻煩,同時(shí)許多DNS還支持基于地理位置的域名解析,即會(huì)將域名解析成舉例用戶地理最近的一個(gè)服務(wù)器地址,這樣可以加快用戶訪問速度,改善性能。缺點(diǎn):不能自由定義規(guī)則,而且變更被映射的IP或者機(jī)器故障時(shí)很麻煩,還存在DNS生效延遲的問題。而且DNS負(fù)載均衡的控制權(quán)在域名服務(wù)商那里,網(wǎng)站無法對其做更多改善和更強(qiáng)大的管理。反向代理負(fù)載均衡反向代理服務(wù)可以緩存資源以改善網(wǎng)站性能。實(shí)際上,在部署位置上,反向代理服務(wù)器處于Web服務(wù)器前面(這樣才可能緩存Web相應(yīng),加速訪問),這個(gè)位置也正好是負(fù)載均衡服務(wù)器的位置,所以大多數(shù)反向代理服務(wù)器同時(shí)提供負(fù)載均衡的功能,管理一組Web服務(wù)器,將請求根據(jù)負(fù)載均衡算法轉(zhuǎn)發(fā)到不同的Web服務(wù)器上。Web服務(wù)器處理完成的響應(yīng)也需要通過反向代理服務(wù)器返回給用戶。由于web服務(wù)器不直接對外提供訪問,因此Web服務(wù)器不需要使用外部ip地址,而反向代理服務(wù)器則需要配置雙網(wǎng)卡和內(nèi)部外部兩套IP地址。優(yōu)點(diǎn):和反向代理服務(wù)器功能集成在一起,部署簡單。缺點(diǎn):反向代理服務(wù)器是所有請求和響應(yīng)的中轉(zhuǎn)站,其性能可能會(huì)成為瓶頸。負(fù)載均衡策略