记者在近期采访IONA公司大中华区总裁薛志勇时,他提出用分布式SOA的架构来帮助企业用户解决SOA叫好不叫座的问题。分布式SOA凭借设立在服务器 端的一个软件封装,就能把纷繁的系统架构和应用都融合在一个网络里,这种封装方式就像原来不同的网络协议被TCP/IP封装一样;也好比用一个标准信封来 装不同的信一样。
记者:企业为什么要用分布式SOA架构?
薛志勇:因为企业的机房不是集中的,这些机房分布在不同的地点,采用不同的应用、不同的中间件、不同的平台,系统建立在不同的时期,甚至选择的开发商也不同。这样看来,实际上企业的信息化基础架构就是分布式的,很难一揽子地制订一个标准来实现统一。
互联网就是迄今为止规模最大的分布式应用,SOA架构正应该具备互联网的这种分布式特性。当用户使用浏览器点击URL链接时,其请求并不是 通过安装在服务器或Hub的中央控制程序来路由,而是由浏览器直接传递到请求页面所在的网络服务器。这种方法非常适合互联网,同样也非常适合企业的SOA 架构。由于请求不需要通过Hub或中央服务器,因此互联网的每个端点可以自由更新而不致影响客户端,也不会影响其他站点,更不需要更新Hub或中央服务 器。一个好的SOA架构就应该具备这种功能。
记者:分布式SOA架构与目前我们理解的SOA有何不同?
薛志勇:目前大家所了解的SOA大都是一种紧耦合的SOA,也就是说SOA与企业的数据库、操作系统、服务器绑在一起,但是这种紧耦合方式的SOA缺乏与其他系统的互操作性,很难在技术上保持中立性和兼容性。
记者:这将导致什么后果呢?
薛志勇:可能导致企业要用自己的资金、自己的应用、自己的人力来适应这种紧耦合的系统, 而不是用这些系统为企业的应用提供灵活的服务。这种方式首先投资比较大;第二,由于中间协议很多都是专有协议,因此不够标准化;第三,这种方式的中间件要 占用资源、数据转换要占用资源、业务流程的编制要占用资源,导致对硬件平台提出了比较高的要求,本来用PC就可以实现的功能,现在则要用服务器才能实现。
记者:分布式SOA的工作原理是什么?
分布式SOA首先要把各种互不连通的元素进行互联,无论是基于.COM的还是基于Java的,都采用IONA的Artix(可扩展的企业服务总线产品)进行封装。这种封装方式就像原来不同的网络协议被TCP/IP封装一样;也好比用一个标准信封来装不同的信一样。
另外,不管用户想要实现什么样的服务,我们都提供这个服务通用的中间层服务。比如一个用户要开通手机业务,运营商需要接单、把信息录入、把 信息传到ERP系统、给系统下达指令、通过网络开通手机业务、计费,这个流程要进行编制,要对服务进行管理,要对事务进行处理,而且还要保障安全性,这就 是SOA应该提供的解决方案,我们叫中间层服务。在这种服务中,IONA提供了插件式的架构,用户需要增加哪一项服务,我们就把哪一项服务对应地进行封 装,只要在用户的端点上加入程序、纳入SOA网络就可以了。而且,这种部署还是动态的,也就是无需用户停下现有业务而等待新业务的加入。
以国内某省网通公司为例,它要把BSS、OSS和MSS系统集成在一个系统里的投资是1500万元,如果用分布式SOA则只需20%的投资。
记者:如果用户过去已经建立了EAI(企业应用集成),现在想改用分布式SOA该怎么办?
薛志勇:只要加上端点、加上封装,就可以进入SOA网络。要想实现封装进入SOA网络,我们只需要在用户的服务器端加上Artix软件,这对服务器的性能要求并不高,无论是在空间还是对CPU的消耗上,都占不到10%的比例。