特约作者: 吴晓伟
一位制造行业的首席信息官(CIO)正在著手上马信息化二期工程,但此时的他却遭遇到了前所未有的挑战: 老板要求降低 IT 支出,企业早期的几个信息系统需要整合,新的业务类型开始出现。这三个挑战环环相扣,但又互为掣肘,让人无从下手。
事实上,这是大部分行业的 CIO 面临的普遍问题。尽管平台化、构件化和中间件技术已经初步缓解了应用系统内部的可靠性和效率问题,也基本可以解决应用系统之间数据层面的互通,但面对企业业务规模的日益膨胀和快速变化,传统的中间件技术正变得越来越难以胜任。
那么,该如何解决系统的集成和扩展问题呢?随之出现的 SOA(服务型架构)热潮,让 CIO 们看到了希望。来自应用的需求正促使中间件技术不断完善,以更灵活的方式满足用户快速变化的需求。
从产品到平台的跨越
作为银行的客户,您想随时了解自己账户的任何变动吗?与大多数银行的客户一样,中国农业银行的客户也可以通过短信随时了解到自己账户的支出或存入的变化,并通过手机进行查询、转账和缴费。这些功能的实现,得益于农行采用消息中间件搭建消息服务平台。该平台打通了中心与柜员之间、柜员与柜员之间、银行与客户之间的消息通道。值得一提的是,这个平台不只是“把信息从这里传到那里”那么简单,它还可以按照业务需求进行扩展。
由于以前农行在信息化方面的投入较少,没有过多的单独业务系统的限制,所以在信息化建设大规模投入之初,就选择了平台化的设计思想。当业务部门提出消息服务的业务需求时,农行软件开发中心就决定基于消息中间件构建消息服务平台。类似的用中间件来搭建平台的例子还有很多,仅记者接触过的就有: 中国联通采用应用服务器搭建自己的电子商务平台,天信达用消息中间件建立网上航空物流公共信息交换平台,云南省公安厅应用中间件搭建了数据交换平台。
作为一种独立的服务程序,中间件包括消息中间件、交易中间件、安全中间件、应用服务器中间件、网络中间件等诸多种类。但对于用户来说,中间件不应仅是一种技术或是一种应用,而应是一个让各种系统应用走向融合的平台。
从中国国内信息化发展的进程来看,这种对平台的需求也属必然。目前,不少用户的信息化建设取得了较大的进展,但由于先前缺乏统一的规划和技术路线,当需要了解企业生产经营情况时,往往需要在 ERP、CRM 和 FM 等系统之间不停地切换,不仅要更换用户名和同时记住多个密码,更重要的是系统之间信息共享困难、缺乏数据的互联互通,影响了整体性能的发挥。因此,统一平台的出现,成为中间件产品发展的必然趋势。
在中间件市场,厂商显然也意识到中间件平台的重要性。Oracle 在进行一系列收购后,推出了 Fusion 中间件。Fusion 不仅可以完美兼容现有的 Oracle 产品,并且可以接受符合标准的第三方组件。标准的开放,一方面可以帮助企业增值,另一方面也有助于跟 ISV 的合作,用来构建与 Oracle 兼容的产品。另外,SAP 推出了新的技术平台 SAP NetWeaver,微软也发布了 Microsoft Dynamics GP 平台。
当然,面对中间件产品呈现的平台化趋势,在 Oracle 的 Fusion 和 SAP 的 Netweaver 引领潮流的同时,国内厂商也在积极跟进,纷纷推出自身的中间件平台产品,例如用友的 UAP、金蝶的BOS和金算盘的 VP 等。由于这些平台化中间件产品更多地整合了用户的需求,可以预见,它们将更容易得到用户的青睐。
SOA 构想
随著业务的不断发展,如何打破信息孤岛,已成为许多行业企业最为迫切的课题。以电信行业为例,电信有很多的业务,如本地电话业务就有普通电话、ISDN 一线通、公用电话、国内长途业务、小灵通、商务集团、电话程控新业务以及国际长途业务的区分,此外还有公共热线服务、数据多媒体服务、增值服务和电话卡服务等业务,这些业务是随著市场的需求不断变化衍生而来的。为了满足这些不同业务的需求,电信部门分别构建了不同类型的业务系统,这些系统也就成为一个个“信息孤岛”,彼此割裂了业务之间的联系。
为了打破“信息孤岛”,20 世纪 90 年代曾诞生了大量的 EAI 产品,而中间件厂商也开发出了相应的产品,并得到广泛的应用,如 IBM 的 Websphere Integration、东方通科技的 TongIntegrator 等。但随著系统之间的整合变得更为复杂、业务需求变得更加灵活,而且开发成本也需要降低,仅仅依靠传统的中间件产品,已经很难满足需要。
在这种情况下,SOA 得到了中间件厂商的推崇。作为一种全新的应用软件架构,SOA 力图将所有的功能封装成相互独立的服务模块,然后再通过完备定义的接口相互联系起来。当用户在不同应用系统之间构建新的业务应用的时候,就可以按照一定的顺序来请求这些功能模块所提供的服务,从而构建新的业务流程。从用户的角度来看,SOA 提供的思路和方法,可以最大程度地解决复用问题,无疑非常出色。
虽然不是一项新技术,但 SOA 似乎一夜之间成为了大家关注的对象。BEA 在 2004 年底就提出了“Deploy SOA Now!”(现在就部署 SOA!)的口号。2005 年 7 月,惠普推出了 OpenView SOA。与此同时,IBM 也推出了相同的计划,联手企业合作者、应用程序开发商和系统集成者,共同使用 IBM 的技术资源,期望能够在大型和中型企业实现 SOA 项目的推广。Oracle 也推出了服务导向架构套件──Oracle SOA Suite,其“插座式”能力使客户在利用现有中间件技术的同时,可充分享受到 SOA 带来的种种益处。
在刚刚结束的 OASIS 会议以及以 SOA 和整合为主题的全球会议论坛上,SOA 如何真正应用于各行各业,成了全球 SOA 落地的最热点问题。也就是说,在 SOA 技术大行其道的今天,全球对传统中间件技术的应用非常普遍,传统技术如何向 SOA 技术过度,两者在不同的行业需求背景下如何很好地配合和融合,相互替换,兄共存,这种模式将在很长一段时间之内存在,并逐渐发展。这其实就是解决最大限度的复用问题,进而降低开发成本,提高开发效率。
但也有专家提出,SOA 只是一个箭头,离应用还有一定距离。主要的问题在于,SOA 更偏重在松耦合结构的应用集成方面,解决系统的集成和扩展问题,并不跟行业的具体业务相关联,仍然存在著一个针对行业特性的缺位。显然,仅依靠 SOA,目前还很难解决这些行业特性、行业复用性等问题。
我们可以选择谁?
IDC 数据显示,1998 年中间件市场总值仅为 12.34 亿美元,而到 2004 年达到 90.3 亿美元,年增长率高达 39.7%。中国中间件近年来也进入了快速发展阶段,预计今后 5 年市场的容量将达到 9 亿美元左右。
在市场快速增长的同时,用户也开始逐渐成熟。一方面,需求差异化日益明显,不同行业、不同企业、不同阶段的客户对中间件的需求有较大的不同;另一方面,用户只相信品牌和追求功能大而全的年代已经一去不复返了。现在,用户在中间件上的投资应用大多以实用为原则。
中间件当前主要应用在一些垂直行业系统,如金融、电信、金字工程等,各个品牌只要通过了总公司(总部)的入围选型,就很容易在地方分支机构推广应用。不过,在用户主动选择中,解决方案的适合与否,成了最为关键的因素。目前已有厂商提供了数十种针对各行业、各应用系统的产品解决方案,有针对性地满足了多种类型客户的需要。
目前,市场上的中间件厂商很多,可供用户选择的产品也不少。从整体来看,国外厂商在技术实力、整体架构等方面占有明显的优势,它们更多的是注重产品的通用性,产品的行业特性相对欠缺。而在国内厂商阵营中,已有 30 多家企业进入或宣布要进入中间件市场,他们大多脱身于行业应用,对行业有较为深刻的理解,但在产品、应用方面的积累较为欠缺,面临同质化、通用性差等问题。另外,国内外厂商的产品价格也有一些明显的差别。
那么,是选择技术先进性还是选择满足行业特性,是选择性能较高还是选择价格较低,用户需要根据自身的情况做出衡量。