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

1.4 分布式架構(gòu)設(shè)計(jì)難點(diǎn)

1.4.1 網(wǎng)絡(luò)因素

由于服務(wù)和數(shù)據(jù)分別部署在不同的機(jī)器上,它們之間的交互通信會(huì)存在如下問(wèn)題。

1)網(wǎng)絡(luò)延遲。延遲是指在傳輸介質(zhì)中傳輸所用的時(shí)間,如部署在同一個(gè)機(jī)房,網(wǎng)絡(luò)I/O傳輸相對(duì)較快,但是很多公司為了增加系統(tǒng)的可用性,有多套機(jī)房(線上、線下),此時(shí)會(huì)面臨跨機(jī)房、跨網(wǎng)絡(luò)傳輸?shù)惹闆r。尤其是跨IDC,其網(wǎng)絡(luò)I/O會(huì)存在不確定性,出現(xiàn)延遲、超時(shí)等情況,雖然可以通過(guò)換網(wǎng)卡解決寬帶瓶頸,但不能從根本上解決物理延遲。由于這些現(xiàn)象會(huì)給整個(gè)設(shè)計(jì)帶來(lái)整體性的難點(diǎn),我們?cè)谧龇植际郊軜?gòu)設(shè)計(jì)的同時(shí)需要考慮這些要素,并且提供相關(guān)高效解決方案,從而規(guī)避此問(wèn)題。

  • 由于分布式系統(tǒng)調(diào)用會(huì)出現(xiàn)失敗、超時(shí)等情況,方案設(shè)計(jì)時(shí)需考慮以上場(chǎng)景,提供重試功能,保證請(qǐng)求的完整性。
  • 傳輸內(nèi)容體過(guò)大、業(yè)務(wù)鏈條太長(zhǎng)也會(huì)導(dǎo)致網(wǎng)絡(luò)I/O傳輸阻塞,此時(shí)我們可以精簡(jiǎn)傳輸內(nèi)容,優(yōu)化業(yè)務(wù)鏈條,如通過(guò)同步轉(zhuǎn)異步、數(shù)據(jù)壓縮等方式避免阻塞。

2)網(wǎng)絡(luò)故障。若出現(xiàn)網(wǎng)絡(luò)故障問(wèn)題,可以先了解數(shù)據(jù)是以什么協(xié)議方式在網(wǎng)絡(luò)中傳輸導(dǎo)致丟包、錯(cuò)亂,然后采用比較穩(wěn)定的TCP網(wǎng)絡(luò)協(xié)議進(jìn)行傳輸。

主站蜘蛛池模板: 浙江省| 图们市| 新野县| 清涧县| 江西省| 栾城县| 郎溪县| 建阳市| 定远县| 信丰县| 武汉市| 宜昌市| 绥阳县| 剑川县| 吴桥县| 浮山县| 马边| 涞源县| 喀什市| 扶风县| 彭山县| 平南县| 桃江县| 肇东市| 英吉沙县| 桂东县| 高平市| 洞口县| 大余县| 永靖县| 漯河市| 大厂| 蕉岭县| 文安县| 大悟县| 彭阳县| 沁水县| 哈尔滨市| 永顺县| 米泉市| 阳新县|