小机,再见! 阿里巴巴最后一台下线的IBM小机
淘宝是首先推行“去IOE”战略的业务部门之一。“去IOE”之所以能从淘宝开始,是因为淘宝拥有阿里最大的Oracle数据库,成本和技术压力最大。淘宝技术专家余锋曾说:尽管Oracle数据库性能稳定,但是对于淘宝来讲,Oracle数据库本身已经不能满足业务需求。淘宝的数据库专家从IT前端逐渐过渡到后端,弱化Oracle数据库,把“Oracle数据库+IBM小型机+EMC存储设备”切换到“MySQL数据库+PCServer的模式”。到2013年7月10日,淘宝重中之重的广告系统的Oracle数据库全部下线。
2013年5月17日,阿里集团最后一台IBM小机在支付宝下线时也使阿里“去IOE”运动越发受到关注。
在“去IOE”的进程中,支付宝首席架构师程立有自己的苦衷。支付宝有阿里最后一台IBM小机,这台小机管理着支付宝用户的所有资金。如果这台小机出现故障,用户将会无法支付,甚至连自己账户里有多少钱都看不到了,后果将不堪设想,因此对这台小机的任何改动都要确保万无一失。去除支付宝IBM小机的第二个难点在于,去除小机的前提是实现技术架构分布化,为支付宝IT迁移到云平台打下基础。但将技术架构从集中变成分布后,很难保证强一致性,比如客户A给客户B转了一笔钱,不能出现A的钱扣了,但B的钱没增加的情况。如何在一个分布的系统中保证交易处理的一致性是一个要攻克的技术难题。
“在王坚博士梳理整个阿里技术架构的时候,支付宝曾经是他‘去IOE’最大的一个‘障碍’”程立向《商业价值》记者说道。“我们必须要保证每天处理的大量资金,一分钱都不能错,一笔都不能差。”出于谨慎,程立和团队在去掉支付宝系统中其它所有的IBM小型机后,还保留着这台小机管理最重要的账户资金。”
时间回溯到2012的“双十一”大促的凌晨,很多消费者不断点击支付按钮,却常常看到支付宝的排队页面。消费者以为支付宝系统崩溃了,实际上,当时是因为支付宝仅存的这台小机的承载能力有限,在高峰交易期,系统只能对来不及处理的请求进行排队,这种排队带来的延迟产生了巨大的用户体验障碍。
“双十一”的痛苦经历,让程立最后下定决心去掉这最后一台小机,最终,支付宝技术团队设计出了基于互联网技术的分布式交易处理方案,通过一次完美的项目执行去除了支付宝、同时也是阿里的最后一台IBM小机。
2013年的双十一是程立经历过的最轻松一次“大促”,再也不担心有任何技术节点会制约业务的发展了。 |