集中式和分布式架構(gòu)的“伯羅奔尼撒戰(zhàn)爭”

01

1964年,吉恩·阿姆達(dá)爾的團(tuán)隊(duì)耗費(fèi)了50億美金后,終于研制出了世界上第一臺(tái)采用集成電路工藝的計(jì)算機(jī)IBM360。

因?yàn)镮BM360的出現(xiàn),吉恩·阿姆達(dá)爾被冠以商用大型機(jī)最早的“建筑師”、有史以來最偉大的計(jì)算機(jī)設(shè)計(jì)師等一連串的頭銜,IBM也憑借比原子彈造價(jià)高2.5倍的投入,奠定了計(jì)算機(jī)帝國的半壁江山。

可如此高昂的研發(fā)成本也留下了一個(gè)棘手問題,只有國防、金融、交通、能源等國家支柱產(chǎn)業(yè)才能承擔(dān)起大型機(jī)的費(fèi)用,普通企業(yè)幾乎無法染指。好在有學(xué)者提出了“效用計(jì)算”的概念:家家戶戶都可以使用電燈,卻不需要各家各戶都配置并維護(hù)一臺(tái)發(fā)電機(jī),是否可以用同樣的方式提供計(jì)算服務(wù)呢?集中式架構(gòu)的理念應(yīng)運(yùn)而生。

但到了20世紀(jì)80年代,計(jì)算機(jī)架構(gòu)卻也開始向兩個(gè)方向發(fā)展:以X86為架構(gòu)的面向個(gè)人的PC和以RISC為架構(gòu)面向企業(yè)的UNIX服務(wù)器。在成本天平的制約下,不少企業(yè)改用小型機(jī)及PC來搭建系統(tǒng)架構(gòu),分布式架構(gòu)的思想逐漸開始生根萌芽。

單從時(shí)間上看,有關(guān)分布式架構(gòu)與集中式架構(gòu)孰優(yōu)孰劣的討論已經(jīng)持續(xù)了30年左右的時(shí)間,幾乎等同于伯羅奔尼撒戰(zhàn)爭的時(shí)長,集中式架構(gòu)和分布式架構(gòu)分別扮演了雅典城邦和斯巴達(dá)的角色。

02

先來花一點(diǎn)時(shí)間回憶下,什么是集中式架構(gòu),以及什么是分布式架構(gòu)?

集中式架構(gòu)可以理解為將所需要的服務(wù)器資源集中在少數(shù)幾臺(tái)服務(wù)器上,可以理解為“中央集權(quán)式”的部署。而分布式架構(gòu)的思想根基是根據(jù)業(yè)務(wù)功能、模塊設(shè)計(jì)或者行政機(jī)構(gòu)的不同,采用相對分散的中小型服務(wù)器。

集中式架構(gòu)的“代表人物”就是采用Power架構(gòu)的浪潮K1 Power系列高端服務(wù)器,最大特點(diǎn)在于部署結(jié)構(gòu)簡單、高效運(yùn)營。集中式系統(tǒng)往往基于底層性能卓越的服務(wù)器,終端或客戶端機(jī)器僅僅負(fù)責(zé)數(shù)據(jù)的錄入和輸出,無需考慮如何對服務(wù)進(jìn)行多個(gè)節(jié)點(diǎn)的部署,也就不用考慮多個(gè)節(jié)點(diǎn)之間的分布式協(xié)作問題。

然而由于歷史上的種種原因,集中式架構(gòu)多用于傳統(tǒng)的銀行、電信、交通、醫(yī)療等行業(yè),操作系統(tǒng)、中間件、數(shù)據(jù)庫等“基礎(chǔ)軟件”多為閉源商用系統(tǒng),“穩(wěn)定、安全”幾乎是集中式架構(gòu)的代名詞。

分布式架構(gòu)則被Google、Amazon、Facebook、阿里巴巴、騰訊等互聯(lián)網(wǎng)公司所推崇,往往采用性價(jià)比更高的X86服務(wù)器、分布式數(shù)據(jù)庫和大量的內(nèi)存閃存,既沒有控制整個(gè)系統(tǒng)的“主機(jī)”,也沒有被控制的“從機(jī)”,分布式系統(tǒng)的所有節(jié)點(diǎn)都是對等的,并且可以在空間部署上進(jìn)行隨意分布,可以是不同的機(jī)房,甚至是不同的城市。

由于分布式架構(gòu)下的單臺(tái)服務(wù)器處理能力有限,數(shù)據(jù)庫層和應(yīng)用層主要依賴橫向擴(kuò)充,導(dǎo)致數(shù)據(jù)庫服務(wù)器必須使用并行版數(shù)據(jù)庫軟件,應(yīng)用系統(tǒng)必須基于并行數(shù)據(jù)訪問方式進(jìn)行開發(fā),早期確實(shí)遇到了不少技術(shù)上的瓶頸。

不過從聲量上來看,隨著互聯(lián)網(wǎng)巨頭們影響力的與日俱增,分布式陣營在話語權(quán)上逐漸勝過集中式架構(gòu),以至于不少論壇上出現(xiàn)了往分布式架構(gòu)一邊倒的現(xiàn)象。

03

至于分布式架構(gòu)是否優(yōu)于集中式架構(gòu),仍然存在很大的爭議。

正如許多人多認(rèn)可的:集中式架構(gòu)的優(yōu)勢在于可靠性、一致性和穩(wěn)定性,缺點(diǎn)在于不適用于非結(jié)構(gòu)化數(shù)據(jù),特別是在支撐力有限的前提下,但對頂層設(shè)計(jì)的要求偏高;分布式架構(gòu)長于彈性、擴(kuò)展性和敏捷性,又在并發(fā)性、全局時(shí)鐘、故障處理等方面存在先天不足。

只是這些優(yōu)點(diǎn)和缺點(diǎn)的比較,多半還在站在技術(shù)的角度上,如果站在客戶需求的立場上,或許可以得到不一樣的答案。

譬如在可擴(kuò)展性方面,分布式架構(gòu)看似有著無可比擬的優(yōu)勢,但在實(shí)際應(yīng)用中,鑒于并行數(shù)據(jù)庫的軟件使用難度和維度費(fèi)用較高,橫向擴(kuò)充方式的實(shí)現(xiàn)相對困難許多。反倒是集中式架構(gòu)由于單臺(tái)服務(wù)器有著較好的可擴(kuò)充能力,可采用增加硬件和配件的縱向方式提升處理能力,數(shù)據(jù)庫和應(yīng)用軟件不需要進(jìn)行調(diào)整,實(shí)現(xiàn)起來反而相對容易。

又譬如在投資成本方面,集中式架構(gòu)的前期采購價(jià)格偏高,給人留下了高成本的印象,分布式架構(gòu)則勝在成本優(yōu)勢。簡單算一筆經(jīng)濟(jì)賬的話,分布式架構(gòu)的硬件采購成本偏低,與之對應(yīng)的軟件成本、運(yùn)維成本乃至機(jī)房建設(shè)成本,都可能隨著機(jī)器數(shù)量線性增長,到達(dá)某個(gè)臨界點(diǎn)后,分布式架構(gòu)的成本可能會(huì)高于集中式。

當(dāng)然,分布式架構(gòu)還有另一重被看好的因素,即安全性。封閉的體系和國外巨頭壟斷的市場現(xiàn)狀,較于有自主知識(shí)產(chǎn)權(quán)的分布式架構(gòu),似乎在控制能力上稍顯吃力。

而浪潮K1等國產(chǎn)高端服務(wù)器的出現(xiàn),已然在某種程度上改變了這一局面,比如浪潮商用機(jī)器針對K1 Power服務(wù)器進(jìn)行了全新的設(shè)計(jì),從固件的開發(fā)、KUX操作系統(tǒng)到AIX、Linux的兼容,Power的整個(gè)生態(tài)系統(tǒng)正在從封閉走向開放。在這樣的局面下,諸如集中式架構(gòu)的安全疑問自然不攻自破。

或許應(yīng)該拋棄一些固有的偏見,以客觀的態(tài)度認(rèn)識(shí)IT架構(gòu)。

04

事實(shí)也是如此,分布式架構(gòu)和集中式架構(gòu)的討論,正逐漸從商業(yè)話題轉(zhuǎn)變?yōu)榧兇獾募夹g(shù)性問題?;蛟S在企業(yè)的立場上,集中式和分布式架構(gòu)從來都不是非此即彼的選擇,而是擇其善者而選之。

諸如谷歌、阿里等面對大量非結(jié)構(gòu)化數(shù)據(jù)的互聯(lián)網(wǎng)巨頭,自然成了分布式架構(gòu)的重視擁躉,阿里甚至在2009年掀起了一場”去IOE”運(yùn)動(dòng)。但對于制造業(yè)、金融業(yè)等需要敏捷開發(fā)的行業(yè),集中式架構(gòu)的適用性要優(yōu)于分布式架構(gòu),用一臺(tái)機(jī)器集中解決IT問題,在空間成本、運(yùn)營、管理、軟件許可成本等方面優(yōu)勢的優(yōu)勢不無明顯。

一個(gè)直觀的案例,在全球銀行百強(qiáng)的采購名單中,2019年依然有92%的銀行購買了集中式架構(gòu)的服務(wù)器。特別是多云、混合云等趨勢下,客戶的架構(gòu)選擇不再像以前那么單一,分布式和集中式架構(gòu)的應(yīng)用場景,不再只是行業(yè)間的差異,逐步細(xì)化到了應(yīng)用場景上。

比如某銀行在對高穩(wěn)定性、高安全性有著苛刻的要求,并注重關(guān)鍵應(yīng)用的秒級(jí)災(zāi)備能力,以及強(qiáng)調(diào)數(shù)據(jù)完整性的場景上,集中式架構(gòu)仍然是最好的選擇;在互聯(lián)網(wǎng)金融等需要快速創(chuàng)新的業(yè)務(wù)中,流量上存在較大的彈性和不確定性,對可擴(kuò)展性有著明顯的剛需,選擇分布式架構(gòu)可以說是最正確的結(jié)果。

招商銀行與浪潮商用機(jī)器的合作就是個(gè)例子。招商銀行選擇了集中式和分布式融合的的IT基礎(chǔ)架構(gòu),以業(yè)務(wù)和IT的適用性選擇平臺(tái),比如招商銀行的核心系統(tǒng)跑在浪潮Power服務(wù)器上,信用卡業(yè)務(wù)基于X86系統(tǒng)。如此選擇的好處不無明顯,既能滿足成熟業(yè)務(wù)高效、穩(wěn)定、安全運(yùn)行的要求,同時(shí)支持新業(yè)務(wù)的創(chuàng)新,還能保護(hù)已有投資的延續(xù)性。

借用浪潮商用機(jī)器總經(jīng)理胡雷鈞的觀點(diǎn):“未來的選擇一定是多樣化的,每個(gè)用戶都可以根據(jù)實(shí)際需求選擇適合自己的方案?!碑吘箍蛻舻膽?yīng)用在高速變化,不同業(yè)務(wù)對安全性和靈活部署有著不同的偏好,只依靠一種架構(gòu)注定是不現(xiàn)實(shí)的。

難題其實(shí)留給了大大小小的IT服務(wù)商們,客戶需要的不是集中式與分布式架構(gòu)之間的單項(xiàng)選擇題,需要針對具體的場景制定相應(yīng)的方案,分布式架構(gòu)也好,集中式架構(gòu)也罷,沒有本質(zhì)上的孰優(yōu)孰劣,無非是適合什么樣的場景而已。

也就不難給分布式架構(gòu)和集中式架構(gòu)長達(dá)30年的討論做一個(gè)注腳,所有的技術(shù)專家都可以有自己的立場,可脫離了場景談優(yōu)劣,無異于“耍流氓”。

05

歷史上的伯羅奔尼撒戰(zhàn)爭,以斯巴達(dá)一方的勝利收場,代價(jià)卻是斯巴達(dá)不惜犧牲希臘的長遠(yuǎn)利益,選擇和宿敵波斯聯(lián)盟,最終在戰(zhàn)爭中摧毀了希臘文明的基礎(chǔ),整個(gè)希臘世界開始由盛轉(zhuǎn)衰。

無論是集中式陣營,還是分布式陣營,無不是穿梭在商業(yè)游戲中的聰明人,注定不會(huì)只知對抗,不懂平衡,重蹈伯羅奔尼撒戰(zhàn)爭的覆轍。一個(gè)比較樂觀的消息是,幾乎所有公司在選擇架構(gòu)時(shí),務(wù)實(shí)和理性都戰(zhàn)勝了主觀上的情感偏好。

同時(shí)集中式架構(gòu)和分布式架構(gòu)的“爭奪”,越發(fā)像道家太極里的陰陽,一時(shí)的漲消并不重要,關(guān)鍵是二者處于一種和諧共生的平衡中。比如浪潮在集中式架構(gòu)的服務(wù)器上推出了分布式的存儲(chǔ)解決方案,金融行業(yè)中也出現(xiàn)了分布式數(shù)據(jù)部署在集中式架構(gòu)的嘗試。

集中式與分布式不再是替代關(guān)系,而是融合關(guān)系。何況“軟件定義”正逐漸成為IT領(lǐng)域的主旋律,大量的云計(jì)算軟件和云應(yīng)用可以無差別運(yùn)行在不同的硬件架構(gòu)上,也在加速分布式架構(gòu)和集中式架構(gòu)的融合。

免責(zé)聲明:此文內(nèi)容為第三方自媒體作者發(fā)布的觀察或評論性文章,所有文字和圖片版權(quán)歸作者所有,且僅代表作者個(gè)人觀點(diǎn),與極客網(wǎng)無關(guān)。文章僅供讀者參考,并請自行核實(shí)相關(guān)內(nèi)容。投訴郵箱:editor@fromgeek.com。

極客網(wǎng)企業(yè)會(huì)員

免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進(jìn)一步核實(shí),并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。

2019-12-05
集中式和分布式架構(gòu)的“伯羅奔尼撒戰(zhàn)爭”
011964年,吉恩·阿姆達(dá)爾的團(tuán)隊(duì)耗費(fèi)了50億美金后,終于研制出了世界上第一臺(tái)采用集成電路工藝的計(jì)算機(jī)IBM360。

長按掃碼 閱讀全文