就像泳池中的泳道保護泳者,確保他們在泳池中安全有效地前進一樣,架構(gòu)中的泳道也可以保護你的系統(tǒng)運營。在一條泳道中的一組系統(tǒng)的運營,是在泳道繩子引導(dǎo)下的運營,不會影響到其他泳道中系統(tǒng)的運營。此外,在架構(gòu)師和工程師設(shè)計新功能時,泳道也會為他們提供指導(dǎo),幫助他們決定應(yīng)該把哪些功能集合放在哪種類型的泳道中,才能實現(xiàn)可擴展性高的架構(gòu)目標(biāo)。
但在技術(shù)群體中,泳道并非唯-使用的故障隔離的術(shù)語。像豆莢(pod)這樣的術(shù)語,常用于定義故障隔離的域,表示一組客戶或-套功能。所謂剝豆莢( podding),就是把一-組數(shù)據(jù)和功能劃分到幾個故障隔離的組中。有時豆莢被用于表示服務(wù)分組,有時則被用于表示數(shù)據(jù)分組。回想一下,我們定義故障隔離時說過,它既適用于組件,也適用于整個系統(tǒng),這里把數(shù)據(jù)或服務(wù)分組,只是適用于組件級別的故障隔離方法。雖然這樣做整個系統(tǒng)都會受益,但從系統(tǒng)角度來看,它不是完整的故障隔離城,因此只能保護采用了它的組件。
技術(shù)群體常用的另一個術(shù)語是分片( shard),通常它描述的是一種數(shù)據(jù)庫結(jié)構(gòu)或存儲子系統(tǒng)。所謂分片(sharding),就是把這些系統(tǒng)劃分到故障域中,這樣一個分片的故障不會全面地影響到系統(tǒng)的其他部分。在由100個分片構(gòu)成的存儲系統(tǒng)中,一個分片發(fā)生故障,其余的99個分片還是能繼續(xù)工作。但是與豆莢一樣,這并不意味著余下的99個分片就運行正常。我們將在本章后面的小節(jié)中,更詳細(xì)地討論這一概念。
裂片(slivers)、組塊(chunks)和池( pools)也是我們久而久之熟悉的術(shù)語。裂片常用來代替分片。組塊常用作豆莢的同義詞。所謂池,通常指的是一-組執(zhí)行相似任務(wù)的服務(wù)器,它也是一個故障隔離的術(shù)語,但又不同于泳道,我們將在后面再討論這一一點。通常它們是執(zhí)行平臺的某一部分功能的應(yīng)用服務(wù)器或Web服務(wù)器。雖然能夠輕松地把這些術(shù)語擴展到整個系統(tǒng)或平臺,而不只是它的組件,但通常它們描述的還是系統(tǒng)整體設(shè)計中的組件。
最后要說的是,關(guān)于你的故障隔離的架構(gòu),并沒有一個答案是“正確的”。你可以選擇自己想使用的術(shù)語,或者創(chuàng)造自己的用語。但存在一一種“正確的”方法,那就是要設(shè)計既能擴展又能在極端需求情況下發(fā)生適度故障的架構(gòu)。
常用的故障隔離術(shù)語
●泳道是從平臺或整個系統(tǒng)的角度描述一種故障隔離的架構(gòu)時最常用的術(shù)語。
●豆莢常用于代替泳道,尤其是以客戶或地理位置為基礎(chǔ)進行故障隔離時。
●分片是在劃分?jǐn)?shù)據(jù)庫或存儲子組件時最常用的故障隔離術(shù)語。
●裂片是豆莢的同義詞,通常用于存儲或數(shù)據(jù)庫子組件。
●組塊是豆莢的同義詞。
●池這個網(wǎng)站制作故障隔離術(shù)語通常用于軟件服務(wù),但在實現(xiàn)時,它不一定是泳道。
本文地址:http://123beaconmarketing.com//article/3891.html