为啥要去IOE——分布式架构的由来

1946年2.14日,那是一个浪漫的情人节 , 世界上第一台电子数字计算机在美国宾夕法尼亚大学诞生了,她的名字叫ENIAC。这台计算机占地170平米、重达 30 吨,每秒可以进行 5000 次加法运算。

第一台电子计算机诞生以后,就意味着一个日新月异的 IT 时代到来了。单台计算机的性能不断得到提升,从最早的 8 位 CPU 到现在的 64 位 CPU;从早期的 MB 级内存到现在的 GB 级别内存;从慢速的机械存储到现在的固态 SSD 硬盘存储。

大型主机凭借着大型机超强的计算和 I/O 处理能力、安全性、 稳定性等,在很长一段时间内,大型机引领着计算机行业及商业计算领域的发展。而集中式的计算机系统架构也渐渐成为了主流。但是随着社会的发展,这种架构越来越难以适应企业的需求,比如说:

  • 大型主机复杂性高,培养一个能够熟练运维大型主机的人成本很高。

  • 大型主机很贵,一般只有土豪机构(政府、电信、金融)才能用得起。

  • 会有单点问题,一旦大型主机出现故障,那整个系统就将处于不可用的状态。而对于大型机的使用机构来说,这种不可用导致的损失是非常具大的。

  • 由于科技的进步、技术的发展,PC 机性能得到了不断提升,所以很多企业放弃大型机改用小型机及普通 PC 来搭建系统架构。

阿里巴巴发起的"去 IOE"运动开启新时代

IOE 指的是 IBM 小型机、Oracle 数据库、EMC 的高端存储。阿里巴巴2009 年“去 IOE”战略技术总监透露,截止到 2013 年 5 月 17 日阿里巴巴最后一台 IBM 小型机在支付宝下线。

为啥要去 IOE?

随着业务的快速发展,阿里巴巴业务量和数据量呈爆发性增长,传统集中式 Oracle 数据库架构在系统的扩展性方面遭遇到了瓶颈。 传统的商业数据库软件(Oracle,DB2)多以集中式架构为主, 那么这些传统数据库软件的最大特点就是将所有的数据都集中在 一个数据库中,只能依靠大型高端设备来提供高处理能力和扩展性。 集中式数据库的扩展性主要采用向上扩展(Scale up)的方式, 通过增加 CPU、内存、磁盘等方式提高系统处理能力。这种集中式数据库的架构,使得数据库成为了整个系统的瓶颈,已经越来越不能适应海量数据对计算能力的要求。

之所以要发展分布式系统架构,是因为单机系统存在着如下诸多缺点等待被解决:

  1. 升级单机处理能力的性价比越来越低

    我们知道单机的处理能力主要依靠 CPU、内存、磁盘。通过升级硬件来这种垂直扩展的方式来提升性能,成本会越来越高。性价比会越来越低。

  2. 单机处理能力存在瓶颈

    并且单机处理能力存在瓶颈,CPU、内存、磁盘都会有自己的性能瓶颈, 就算你是土豪不惜成本去提升硬件,但是硬件的发展速度和性能也还是有限制的。

  3. 稳定性和可用性这两个指标很难达到

  4. 最后就是单机系统存在可用性和稳定性的问题,这两个指标又是我们亟待要去解决的问题。

分布式架构之美

posted on 2018-07-12 08:32  时间朋友  阅读(8951)  评论(0编辑  收藏  举报

导航