官术网_书友最值得收藏!

2.2.1 使用邊車模式改善性能和可用性

眾所周知,對(duì)系統(tǒng)來(lái)說(shuō),關(guān)鍵是性能和可用性,而非或花里胡哨的額外功能。然而,添加負(fù)載均衡層后,網(wǎng)絡(luò)跳數(shù)可能增加,性能和可用性都可能受到影響。另外,系統(tǒng)還需要添加一個(gè)虛擬互聯(lián)網(wǎng)協(xié)議或負(fù)載均衡器,以解決負(fù)載均衡層本身存在的高可用性問(wèn)題,這將導(dǎo)致系統(tǒng)更加復(fù)雜。對(duì)于新增負(fù)載均衡層帶來(lái)的問(wèn)題,邊車模式是解決它們的“銀彈”。

邊車模式指的是在每個(gè)應(yīng)用服務(wù)器上都添加一個(gè)負(fù)載均衡器,該負(fù)載均衡器的生命周期與應(yīng)用本身相同:應(yīng)用啟動(dòng)時(shí),其負(fù)載均衡器啟動(dòng);應(yīng)用被銷毀時(shí),其負(fù)載均衡器消失。每個(gè)應(yīng)用都有自己的負(fù)載均衡器,這確保了負(fù)載均衡器的高可用性。這種方法也最大程度地減少了性能耗損,因?yàn)樨?fù)載均衡器和應(yīng)用部署在同一個(gè)物理容器中,這意味著遠(yuǎn)程過(guò)程調(diào)用(remote procedure call,RPC)變成了進(jìn)程間通信(interprocess communication,IPC)。

除了改善性能和高可用性,邊車模式還將應(yīng)用與數(shù)據(jù)庫(kù)SDK解耦,這讓運(yùn)維團(tuán)隊(duì)能夠隨時(shí)升級(jí)邊車和數(shù)據(jù)庫(kù),因?yàn)檫@種設(shè)計(jì)使得升級(jí)不會(huì)影響業(yè)務(wù)應(yīng)用。由于邊車是獨(dú)立于應(yīng)用的,因此只要邊車采用的是金絲雀發(fā)布(canary release),它對(duì)應(yīng)用開(kāi)發(fā)人員來(lái)說(shuō)就是完全透明的。不同于被連接到應(yīng)用中的類庫(kù),使用邊車可更有效地統(tǒng)一在線應(yīng)用版本。

實(shí)際上,流行的服務(wù)網(wǎng)格概念就將邊車作為數(shù)據(jù)平面,以處理系統(tǒng)中的東西流量和南北流量,它還使用控制平面來(lái)向數(shù)據(jù)平面發(fā)送指令,以控制流量或完成透明的升級(jí)。

邊車模式存在的最大問(wèn)題是其高昂的部署和管理開(kāi)銷,因?yàn)樾枰獮槊總€(gè)應(yīng)用都部署邊車。由于需要部署大量的邊車,因此必須測(cè)量其資源占有量和體量,這至關(guān)重要。

提示 良好的邊車應(yīng)用必須是極度輕量級(jí)的。

主站蜘蛛池模板: 嘉祥县| 若羌县| 南充市| 克什克腾旗| 无棣县| 大田县| 穆棱市| 乌什县| 贵州省| 咸宁市| 铁岭市| 昭平县| 鲜城| 固安县| 阜新| 綦江县| 承德县| 嘉兴市| 泸西县| 融水| 普格县| 北京市| 临武县| 三都| 运城市| 招远市| 曲靖市| 溧水县| 通化县| 建阳市| 铅山县| 郯城县| 惠州市| 石泉县| 山阴县| 古交市| 福州市| 山东省| 平和县| 武平县| 甘南县|