交易完整性是大型主机时代不可或缺的一部分,但在web的时代里这个东西正在经历着某些转变。开发领导视之为强硬的前端Web用户“撞”上了后端的大型主机。这得由软件架构师对相互竞争的系统目标做出平衡。
在拉斯维加斯举行的IBM Impact 2012上,知名行业分析师,RedMonk的***分析师及创始人James Governor在一场有关IBM的Z系列服务器及交易完整性问题的对话上谈到了大型主机事务处理,根据他的说法,接下来,大型主机和Web前端都有着独特的角色需要扮演。
Governor一开始就说,软件设计师应该努力对那些角色有一个好的理解,以便继承一个压力不断增加的Web应用架构。
“规模增长真的很强劲,”他惊呼道。“物联网”的发展以及智能手机类设备的急剧增长会给系统造成压力,他指出。
负荷显著上升,大多数大型主机用户均同意这一点。但大型主机支撑着的一个关键的住宿系统可以处理这些负荷,万豪国际负责信息服务的副总裁Misha Kravchenko说。
Kravchenko估计万豪每天用一套集中运营系统处理80万个间夜的预订,且“没有宕机”。随着万豪努力将分布的负荷联合放到IBM的Z级机器上,近几年负荷出现了上升。显然,对于一度要靠呼叫中心、旅游代理及纯旧式电话支撑的业务来说,Web已成为一股颠覆性的力量。
一旦移动应用真正腾飞起来,他预计会出现更加激烈的增长。万豪最近发布了移动工具,帮助旅行者寻找附近的酒店、预订房间以及核实预订情况。这些移动用户当中有很多都是万豪奖励计划的一员。
分析师Governor说,理解交易问题的核心在于对计算机科学家Eric Brewer的“CAP(一致性—可用性—分区容忍性)”定理的领会。
Brewer断言,对于这三个特性,系统设计师在设计中一般只能授权进行其中的两个。在其旗帜的电子商务系统中,云的风云人物Amazon.com以将“最终一致性”置于即时交易一致性之前而著称。
做主机的人对于这些交易特性采取了一种非常不同的观点。用Governor的话来说就是:“做主机的希望三者皆有之。”
高完整性的交易处理,大铁箱和朋克摇滚
针对需要Brewer三特性的交易,考虑主机设计时,软件架构师也许做得很好,不过要考虑一下其他活动的隔离。对于这一工作的一部分,他们也许会考虑独立的ESB网关。据万豪IT经理Kravchenko的估计,他们也许还会寻求避免XML数据过度的来回折腾。
在其较早版本的集中住宿系统中,单个XML交易会到主机那里跑4、5趟,Kravchenko说。现在,这一情况变了。
“现在XML消息传递在主机中完成。这意味着往返的次数减少了,”他说。同时,主机MIPS的使用也因此下降,他指出。
万豪系统的交易性质跟电子商务网站Amazon的有所不同。理解这一点坚定了万豪将交易处理与房间困惑数据库紧耦合的计划。
当你在Amazon上买书的时候,你看不到存货情况,这一数据是经常更新的,可以描述为交易的最终一致性概念。Kravchenko的观点是,对于Amazon来说这没关系,因为,比方说,书本的价格并不会经常改变,而如果与客户的沟通能够恰当处理的话,延迟的可用性也可以被接受。
酒店房间就不一样了;其实时、有保障的可用性是至关重要的——因为大多数商务旅行者曾在月黑风高风雨交加的晚上出现过。
跟其他人一样,万豪对街区房间的弹性定价也经过了仔细的计算。这一“收入管理定价系统很复杂,公司需要弹性定价到***一间房,”Kravchenko说。
“我们需要一个数据库。它跟存货连接。Amazon则不同,”他说。
云交易型可以覆盖许多方面,但并非全部。
云提供商已经为Web时代以某种方式重建了主机型的交易处理。Governor熟练地用一种音乐类比总结了新的交易领域:“少壮派已经来到这里建立起自己的系统。他们正尝试着做主机做过的东西。”
Amazon、Google和Facebook已经用一种更为简单的方式来减低复杂性,十分类似于上世纪七十年代重塑摇滚的朋克音乐。
“他们说‘我们只用四和弦’,”Governor开玩笑道。
至于主机,Governor说:“让我们弄清楚其最擅长什么,然后也许可以从朋克音乐身上学到点什么。”