“计算改变世界。”没错,每个人都承认这一点。人们相信计算将深刻地融入到经济社会的每一个角落,从而引导资源的快速优化配置与再生,进而实现人类工作生活乃至经济的高质量发展。
然而在关乎计算的底层架构上,我们却始终无法达成共识。三十年来,集中式架构和分布式架构不断发展进化,纷争至今始终没有平息下来。多年前,很多人没有想到分布式计算终非池中之物;多年后,很多人也同样想不到,“迟暮”的集中式计算居然会焕发出又一春。
最近,业界一场精彩异常的辩论赛,使得围绕着集中式架构和分布式架构孰优孰劣的争论从幕后走到台前。
正反双方,针锋相对,各抒己见,擦出了不一样的火花……
集中式架构是传统商业机构的最佳选择
纵观集中式架构发展历史,无疑证明其是传统商业机构的最佳需求。由于设备数量少,架构设计简单,集中式架构也更容易部署和管理。
与此同时,集中式意味着数据的存储与处理,不需要在几个节点之间进行平衡和协作,因此数据的可靠性和一致性更好,而且架构简单、设备少,因此在系统运维、容灾设计和空间用电等方面,集中式都有着较大的优势。
况且,传统的商业用户往往没有一支足够强悍的IT队伍,不具备自主设计、自主调优和自主开发的能力,他们更希望专注于主营业务,而不是“升格”为IT专业机构。正是基于这样的理由,全球绝大多数的大型商业机构仍将集中式架构用于核心和关键业务。
集中式架构的一大优点,就是它的单机处理能力非常强悍。按照当下时兴的说法,那就是“我能打一百个”!不对,即便一百个还是严重低估了集中式架构的实力。强悍的单机处理能力,以及固若磐石的安全性和稳定性,足以满足当时各种核心业务的严苛要求。
不止于此,在事务一致性、稳定性、迁移成本以及运维管理等方面,集中式架构拥有得天独厚的巨大优势。
譬如在我们熟知的数据库应用中,目前仍是集中式数据库占据上风,这些产品历经多年,而且经过了大量的实践验证。与之相比,分布式的数据库产品仍显稚嫩,产品化程度也比较低,很少有机会在核心应用中得到磨炼,因此出现问题的几率也更高。
我们知道,分布式数据库始终面临着数据一致性(C)、可用性(A)和分区容错性(P)等三大问题,这也被称为CAP理论,不幸的是,该理论认为任何分布式系统都不可能同时满足上述三个方面,势必需要做出某种妥协或牺牲。
而时下层出不穷的新技术和新应用,在集中式架构上也能够发挥出更大的价值。以私有云和容器技术为例,集中式架构可以实现快速的池化部署,而且各个资源之间保持独立,应用隔离也做得更加彻底,数据安全也能得到更好的保障。
分布式架构是系统架构进化的选择
近年来,分布式大行其道,根源在于去中心化符合自然世界的本质,物联网、区块链等技术应用,无一不是这种进化的结果。
以数据量为例,IDC曾经专门发布报告,预计全球的数据总量将从2018年的33ZB增长到175ZB,而中国将以30%的年平均增长速度领跑全球。
试想,面对如此磅礴的数据挑战,集中式架构怎么可能做出处理?惟有分布式架构才可以从容面对,反方言之凿凿。
分布式架构的弹性伸缩能力,使得它在面向瞬间爆发的业务洪峰时,可以及时有效地对系统算力进行调整,从而满足海量客户以及超大规模的业务场景。
毋庸讳言,更低的成本是分布式架构的一大优势。毕竟,客户也并非家里有矿,有限的预算必须花到刀刃上。
基于廉价的硬件和开源软件,分布式架构不会被单一厂商绑定,可以引入多家厂商竞争,从而获得更加低廉的成本。尤其是随着应用规模的不断扩大,成本将可以得到更进一步的摊低。
针对“事务一致性”的灵魂拷问,实际上大多数的应用场景并不需要强一致性的现实需求,分布式架构以技术为应用场景服务为宗旨,以事后一致性牺牲强一致,换取高可用性——这也是当前常见和通用的做法,得到了大多数客户的认可。
针对集中式在可用性上存在的致命问题,即单机不可用就会造成全局不可用,一旦出现问题,就需要暂停和中止业务,这对于客户来说是难以接受的,分布式架构去中心化的做法则通过主备、冗余、哈希等手段,实现了计算与存储的高可用性。
在安全性方面,分布式架构也同样不逊色,得益于近年来在理论和实践上的双重演进,分布式同样可以确保全局业务的最终一致性,满足关键与核心业务的严苛需求。
此外,在部署、管理、运维以及容灾、灾难恢复等方面,分布式架构也远远优于集中式,管理人员可以更加主动和高效地进行处理,保障服务的高可用性。
和谐共生,共筑融合系统架构
正反双方辩手剑拔弩张、慷慨激昂,从不同的角度阐述了各自的观点,然而他们还是忽略了一个关键问题,即简单二分法的思维模式从来都被证明是此路不通——成年人的世界里,本就不应该是非白即黑,或是非此即彼的逻辑判断。
系统架构的世界也是如此!
尽管有些人可能还是不愿意相信,但是事实上集中式和分布式已经逐渐成为彼此的有效补充。正如浪潮商用机器总经理胡雷钧所说的那样:“未来的选择一定是多样化的,每个用户都可以根据实际需求选择适合自己的方案。”
分布式架构确实是现在的主流,但是集中式架构的客户们长期以来保持了极高的忠诚度,也是不争的事实:在2019年的全球银行百强采购名单里,仍有多达92%的银行购买了集中式架构的服务器。
类似的事情也发生在其他行业领域内。作为国内集中式架构的领导厂商,浪潮商用机器当家产品K1 Power在政府行业,同样实现了大幅度的增长。
当然,K1 Power并不只是锁定金融和政府行业,事实上它面向更为广阔和通用的应用领域,这一点已经得到了很多行业客户的高度认同。
在浪潮商用机器看来,数字经济下的客户应用处于高速的发展与变化当中,不同种类和特征的业务,对于安全性、经济性以及部署管理运维等,有着本质上的差异要求,这就意味着仅仅依靠单一的集中式,或是分布式架构,不大可能获得令人满意的回报。
以招商银行与浪潮商用机器的合作,试做一简单说明。
招商银行选择了集中式+分布式的基础架构,让不同的业务跑在不同的平台上,譬如该行将核心和稳定的业务系统放在浪潮Power服务器上,而把一些可能需要动态扩充的业务放在X86服务器上。这样做的好处是业务创新得到保障,已有的投资也充分发挥出价值。
随着业务的不断扩充与演进,越来越多的客户正在将分布式与集中式同时纳入到考量当中。一方面,他们希望借助分布式为自身提供弹性、快速和敏捷的业务部署,另一方面他们也希望通过集中式构筑自身的核心竞争优势,避免堕入到同质化竞争的红海当中。
就这样,从早年的相互取代走到如今的共生,分布式与集中式融合的架构正在成为完美商业逻辑下的新选择。