portant;" />
1964年,吉恩(ēn)·阿姆(mǔ)达尔的团队耗费了50亿美金后,终于研制出(chū)了世界(jiè)上第一台(tái)采用集成电路工(gōng)艺(yì)的计算机IBM360。
因为IBM360的出现,吉恩·阿姆达尔(ěr)被冠以商(shāng)用大(dà)型机最早的(de)“建筑师”、有史以来最伟大(dà)的(de)计算机设(shè)计师等(děng)一连串的头衔,IBM也凭借比原子弹造(zào)价高2.5倍的投入,奠定了(le)计算(suàn)机帝国的(de)半壁江山。
可如此高昂的研发成本(běn)也留下了一个(gè)棘手问题,只有国防、金融、交通、能源等(děng)国家支柱产业才能承担起大型机的费用(yòng),普通企业几乎无法染(rǎn)指。好在有学者提出了“效用计(jì)算”的概念(niàn):家家户户(hù)都可以使用电灯,却不需(xū)要各家各户都配置并维护一台发电机,是否可以用同样的方(fāng)式提供计算服务呢?集中式架构的理念应运而生(shēng)。
但到了20世纪80年代,计(jì)算机架(jià)构却也开始向两个方向(xiàng)发(fā)展:以X86为架构的(de)面向(xiàng)个人的PC和以RISC为架构面向(xiàng)企业的UNIX服务(wù)器。在成本天(tiān)平(píng)的制约下,不少企业改用小(xiǎo)型机及PC来搭建(jiàn)系统架构,分布式架构(gòu)的思想逐渐开始(shǐ)生根萌芽。
单从时(shí)间上看,有关分布(bù)式架构与集(jí)中式架构孰优孰(shú)劣的讨论已经持续(xù)了30年左右的时间,几乎等同于伯罗奔尼撒战争的时长,集中式(shì)架构和分布式架构分别(bié)扮(bàn)演了雅典城邦和斯巴(bā)达的角色。
先来花一点时(shí)间(jiān)回忆(yì)下(xià),什么是(shì)集中式架构,以及什(shí)么是(shì)分布式(shì)架构?
集中(zhōng)式(shì)架(jià)构可以理解为将所需要的服务器资源集中在少数几(jǐ)台服(fú)务(wù)器上,可(kě)以理解为“中央集(jí)权式”的部署。而分布式架构的思想根(gēn)基是(shì)根据业务功能、模块设计或者行政机构的不同,采用相对分散(sàn)的中小型服(fú)务器。
集中式架构的(de)“代(dài)表人物”就是采用Power架构的浪潮K1 Power系列高端服(fú)务器,最大特(tè)点(diǎn)在于部署结构简(jiǎn)单(dān)、高效运营。集中式系统往(wǎng)往基(jī)于底层性能卓(zhuó)越的服务(wù)器,终(zhōng)端(duān)或客户端机器(qì)仅仅(jǐn)负责数据(jù)的录入和(hé)输出,无需考虑如何(hé)对服务进行多个节点的(de)部署,也就(jiù)不用考虑多个(gè)节点之间的分布式协作问题。
然而由于历史上的(de)种种原(yuán)因(yīn),集中(zhōng)式架构多用于传统的银(yín)行、电信、交通(tōng)、医(yī)疗等行业,操作系统、中间件(jiàn)、数据库等“基础(chǔ)软件”多为闭源商(shāng)用系统,“稳(wěn)定、安全”几(jǐ)乎(hū)是(shì)集(jí)中式(shì)架构的代名词。
分布式架构则被Google、Amazon、Facebook、阿(ā)里(lǐ)巴巴、腾讯等互联网公司(sī)所推崇,往往采用(yòng)性价(jià)比更高(gāo)的X86服务器、分布式数据库和大量的(de)内存闪存,既(jì)没有控(kòng)制整个系统(tǒng)的“主(zhǔ)机”,也(yě)没(méi)有被控制(zhì)的“从机”,分布式系统的所有(yǒu)节点都是对(duì)等的,并且可(kě)以(yǐ)在空(kōng)间(jiān)部署上进行随意分布,可以(yǐ)是不同的机房,甚至(zhì)是不同的城市。
由(yóu)于分布(bù)式架构下的单台服(fú)务器处理能(néng)力有限,数据(jù)库(kù)层和应用层主要依赖(lài)横向扩充,导致(zhì)数据库服务器必须使(shǐ)用(yòng)并行(háng)版数据库软(ruǎn)件,应用系统必(bì)须基于并(bìng)行数(shù)据访问方式进行开发,早期确实遇到了(le)不少技术上(shàng)的瓶颈(jǐng)。
不过从声(shēng)量上来看(kàn),随着互联网巨头们影响力的与(yǔ)日俱(jù)增(zēng),分布式阵(zhèn)营在话(huà)语权上逐渐(jiàn)胜(shèng)过集中式架构,以至于(yú)不少论坛上出现了往分布式架构一边(biān)倒(dǎo)的(de)现(xiàn)象。
至(zhì)于分布式(shì)架构(gòu)是否(fǒu)优于集中式架构,仍然(rán)存(cún)在很大(dà)的争议。
正如(rú)许多人多认可的:集(jí)中式架构的(de)优(yōu)势在于可靠性、一致性和稳定性(xìng),缺点在于不适(shì)用于非(fēi)结构化数据,特别是(shì)在支撑(chēng)力有限的(de)前提(tí)下,但对顶层设计的要(yào)求偏高(gāo);分布(bù)式架构长于弹性、扩展性和敏捷性(xìng),又在并发性、全局时钟、故障处(chù)理等方面存在先天(tiān)不足。
只是这些优点和缺点的比较,多(duō)半还在站在技术的角度上,如(rú)果站在客(kè)户需求的立场上,或(huò)许可以得(dé)到不一(yī)样的(de)答案(àn)。
譬如(rú)在可扩展性方面(miàn),分(fèn)布式架构看似有着无可(kě)比拟的优(yōu)势(shì),但(dàn)在实际应用中,鉴于并(bìng)行数据库的软件使用难度和维度费(fèi)用较高,横向扩充方(fāng)式的实现相对困(kùn)难(nán)许多。反倒是(shì)集中式架构由于单(dān)台服务器有着(zhe)较好的可扩充能(néng)力,可采(cǎi)用增(zēng)加硬件和(hé)配件的(de)纵向方式提(tí)升处理能力(lì),数据库和应用软件不需要进(jìn)行调整(zhěng),实(shí)现起来反而(ér)相(xiàng)对容易(yì)。
又譬如在投资(zī)成本(běn)方面,集中式架构的(de)前期(qī)采购价格偏高,给人留(liú)下(xià)了高(gāo)成本的印象,分布式架构则胜在成(chéng)本优势。简单算一笔经济账的话,分布式(shì)架(jià)构的硬件(jiàn)采购成(chéng)本偏低(dī),与之对应(yīng)的(de)软件成本、运(yùn)维成本乃至(zhì)机(jī)房(fáng)建设成本,都可能随着机器数量线性增长(zhǎng),到达某个临界点后,分布式架(jià)构的成本可能会高于集(jí)中式。
当然,分布式架构还(hái)有另一重被(bèi)看好的(de)因(yīn)素,即安全性。封闭(bì)的(de)体系(xì)和国(guó)外巨头垄断(duàn)的市场现(xiàn)状,较于有自主(zhǔ)知(zhī)识产权的(de)分布式架构,似(sì)乎在控制能力上稍显(xiǎn)吃(chī)力。
而浪潮(cháo)K1等国(guó)产高端(duān)服务器(qì)的(de)出现,已然在某种程度上改变了这(zhè)一局面,比如浪(làng)潮商用机器(qì)针(zhēn)对K1 Power服务器进行了全(quán)新的设计,从(cóng)固件的开(kāi)发(fā)、KUX操作系统到(dào)AIX、Linux的(de)兼容,Power的(de)整(zhěng)个(gè)生态系统(tǒng)正在从封闭走向开放。在这样的局(jú)面下,诸(zhū)如集中式(shì)架(jià)构的安全疑问自然(rán)不(bú)攻自破。
或许应该抛弃一些固有的(de)偏(piān)见(jiàn),以客(kè)观的态度(dù)认识IT架构。
事实也是如此,分布式架(jià)构和(hé)集中(zhōng)式架构(gòu)的(de)讨论,正逐渐从商业话题转变为纯(chún)粹的技(jì)术性问题。或许在企业(yè)的立场上,集中(zhōng)式和分布式(shì)架构从(cóng)来都不是非此即彼的选择(zé),而是(shì)择其(qí)善者而选之。
诸(zhū)如谷歌、阿里等面对大量(liàng)非(fēi)结构化(huà)数据的互(hù)联(lián)网巨头,自然成了分布式架构的重视拥(yōng)趸,阿(ā)里甚至在2009年(nián)掀起了一(yī)场”去IOE”运动。但对(duì)于制造业、金融业等需要(yào)敏捷(jié)开发的(de)行业(yè),集中式架构的(de)适(shì)用性(xìng)要(yào)优于分布式架构(gòu),用一台机器集中解决(jué)IT问题,在空间(jiān)成本、运(yùn)营、管理(lǐ)、软件许(xǔ)可成(chéng)本等(děng)方面优势的优势不无(wú)明(míng)显。
一个直观的(de)案例,在全球银(yín)行(háng)百强的采购名(míng)单中,2019年(nián)依然有92%的银行购买(mǎi)了集中式架构的服务器。特别是多云(yún)、混合云等趋势下,客户的(de)架构选择不再像以前那么单一,分(fèn)布式和集中式架(jià)构(gòu)的应用场景,不再只是行(háng)业间的差异,逐(zhú)步(bù)细化到了(le)应(yīng)用场景(jǐng)上。
比如某(mǒu)银行(háng)在对高稳定性、高(gāo)安全性有(yǒu)着苛刻的(de)要求(qiú),并注重关键应(yīng)用的秒级灾备(bèi)能力,以及强(qiáng)调数(shù)据完整性的场景上,集中式(shì)架(jià)构(gòu)仍然是最好的选择(zé);在互联(lián)网金融等需要快速创新(xīn)的(de)业务中,流量(liàng)上(shàng)存在较大(dà)的弹性和不确定性,对可扩展性有着明显的刚需,选(xuǎn)择分布(bù)式架构可以说是最正确的结果(guǒ)。
招商(shāng)银行与浪潮商用机器的合作就是个例(lì)子。招商银行选择(zé)了集中式和分布(bù)式融合的(de)的IT基(jī)础架构,以(yǐ)业务和IT的适用性(xìng)选择平(píng)台,比如招商(shāng)银行的核心系(xì)统跑在浪潮Power服务器上(shàng),信(xìn)用卡业务基于X86系统。如此选择的(de)好处不(bú)无(wú)明显,既能满足成熟业务高效、稳定、安全运行的要求,同时支(zhī)持(chí)新业务(wù)的创新(xīn),还能保护已有投资(zī)的延(yán)续性。
借用浪潮商用(yòng)机器总经理胡雷钧(jun1)的观点:“未来(lái)的选择一定是多样(yàng)化的,每(měi)个用(yòng)户都可以根据实际需求(qiú)选择适合自己(jǐ)的方案。”毕竟客户的应用在高速变化,不同业(yè)务对(duì)安全性和灵活(huó)部署有着(zhe)不同的(de)偏好,只(zhī)依靠一种架构注定是(shì)不现实的。
难题其实留给了大大(dà)小小的IT服务商们,客户需要(yào)的不是集中式与分布式架构之间的单项(xiàng)选择题,需要针(zhēn)对(duì)具(jù)体的场景(jǐng)制定(dìng)相应的方案,分布式架构(gòu)也好(hǎo),集中式架构也罢(bà),没(méi)有本质上的孰优孰劣,无非是适(shì)合(hé)什么样(yàng)的场(chǎng)景而已。
也就不难给分布式架构(gòu)和集中式(shì)架构(gòu)长达30年(nián)的讨论做一个注(zhù)脚,所(suǒ)有的技术专家都可以有自己的立场(chǎng),可脱(tuō)离了场景谈优(yōu)劣,无异于“耍流氓”。
历史(shǐ)上的伯罗奔尼(ní)撒战争,以斯巴(bā)达一方的胜利收场,代价却(què)是斯巴达不惜牺牲希(xī)腊的长(zhǎng)远(yuǎn)利益(yì),选择和宿敌波斯联盟,最终在战争(zhēng)中摧毁了希腊文明的(de)基础(chǔ),整(zhěng)个希腊世界开(kāi)始由盛(shèng)转(zhuǎn)衰。
无论是集中式阵营(yíng),还是(shì)分(fèn)布式(shì)阵营,无不是穿梭在商业游(yóu)戏(xì)中的聪(cōng)明人(rén),注定不(bú)会(huì)只(zhī)知(zhī)对抗,不懂平衡,重蹈伯罗奔尼撒战争的覆辙。一个比较(jiào)乐观的消息是,几乎所有公司在选择架构时,务(wù)实和理性(xìng)都战胜了主(zhǔ)观上的情(qíng)感(gǎn)偏(piān)好。
同时集中式架构和分布(bù)式(shì)架构的(de)“争夺”,越发像(xiàng)道家太极里的阴阳,一时的涨(zhǎng)消并不重(chóng)要,关键是二者处于一种和谐共生的平(píng)衡中(zhōng)。比(bǐ)如浪潮在集中式架构的服务器上推出了分布式的存储解决方案,金(jīn)融行业中也出(chū)现了分布(bù)式数(shù)据部(bù)署在集中式架构的尝试。
集中式与分布式不再(zài)是替代关系,而是融合(hé)关系。何况“软件定义(yì)”正逐渐成为IT领域(yù)的主旋律(lǜ),大量的云计算(suàn)软件和云(yún)应(yīng)用(yòng)可以无差别运(yùn)行在不(bú)同的硬件架构上,也在加速分布式架构和(hé)集中式架构的融(róng)合。