最近学校课程有讲corba,因此转一篇关于剖析borland中间件技术的文章.
本文对Borland中间件家族做了一个简要的介绍,并将重点介绍其产品的独到之处和一些来自于电信行业关键业务系统的成功应用,从而为国内信息系统建设尤其是电信行业的应用在中间件技术和产
品的选型上提供一些参考和启发。
Borland作为软件行业的老牌劲旅,凭借其业界领先、富有特色的CORBA和J2EE中间件产品,在全球中间件市场的激烈竞争中为自己赢得了一席之地,一直是该市场中有力的扮演者。Borland的VisiBroker是全球CORBA中间件市场的领导者,在20世纪90年代中期率先推出当时震动业界的Java ORB的实现,如今拥有全球第一的市场占有率和3,000万的部署量。VisiBroker在过去的十多年里被全球各大电信设备制造商、电信运营商、国防制造商广泛采纳,成功应用于国内外电信行业的BOSS系统、网管系统、智能网等众多领域。
Borland中间件平台的全貌
简单来说,Borland中间件产品家族包括VisiBroker和AppServer两大系列。AppServer和VisiBroker有着天然的渊源,理由是AppServer作为Borland的J2EE中间件,其核心的部件如EJB容器本身是采用VisiBroker for Java实现的。从这一点来说Borland很好地通过IIOP技术将自己的CORBA产品和J2EE产品融合在了一起,从而可以实现这两种技术的无缝互操作性。
Borland CORBA中间件——VisiBroker
VisiBroker 是一款完全遵循CORBA 2.6系列规范的CORBA 中间件。VisiBroker是需要高性能响应的、面向复杂数据、大量交易处理、关键任务环境的理想之选。通过其久经考验的线程和连接管理,其智能代理(Smart Agent)架构,以及IIOP协议的高效实现,VisiBroker可以轻松满足大量客户机和服务器的需求。VisiBroker提供CORBA应用程序与其他领先的技术(包括Web Services,.NET和J2EE)之间无缝的互操作所需要的所有功能,使其顺应SOA(面向服务架构)的应用潮流。最新的VisiBroker 7.0版本全面遵循CORBA 2.6的系列规范。在开发方面,VisiBroker实现了多种语言的映射,例如C++、Java、Pascal以及.NET平台上的C#/VB.NET/J#等,因此VisiBroker为企业级应用的开发人员提供了足够丰富的灵活选择。
更重要的是,VisiBroker提供丰富的CORBA标准增值服务,从而为企业级应用的开发提供了广泛的支持。此外,VisiBroker还提供针对嵌入式设备的CORBA实现,也就是VisiBroker-RT。
Borland J2EE中间件——AppServer
AppServer建立在成熟的VisiBroker技术之上,是一款强大的高性能J2EE应用服务器,经过了SUN严格的J2EE1.3认证,最新AppServer 6.6版本已经支持JDK 1.5并全面兼容J2EE 1.4系列规范(如EJB 2.1、Servlets 2.4/JSP 2.0、JMS 1.1、JCA 1.5等)。其可插拔架构、模块化设计以及独特的服务器分区,使其非常适合构建高性能、高可靠性的J2EE应用。
Borland AppServer的底层是由Borland VisiBroker提供协议级的通信支持,在上边提供J2EE的API集, Borland特有的应用服务器分区(Partition)构建在这些接口之上,分区里边包含了各种服务,如Web容器、EJB容器、命名服务、JTS服务、会话(Session)管理服务等等。其核心的服务组件包括Web服务器, 智能代理(Smart Agent), JMS引擎等等。
Borland中间件的不同之处
正如上文所提到的,Borland通过VisiBroker和AppServer提供了业界集成得最好的CORBA和J2EE中间件系列。以下对Borland中间件的一些独到的技术实现以及最新的一些特性做一个概括性的介绍。
VisiBroker先进的基于XML应用部署模式在业界独树一帜
Borland在VisiBroker 7.0中提出了CAM(CORBA Application Model)模型。CAM模型大大简化了OMG的CCM模型(CORBA Component Model)。CAM屏蔽掉了很多CORBA方面的内容。使开发人员在写CORBA应用的时候,不再需要关心对象如何注册,Policy如何设置,事务如何完成等等诸多内容。
VisiBroker 7.0所倡导的CAM开发和部署理念,其核心宗旨是将CORBA的开发大大简化,并使得开发人员可以将精力集中于业务逻辑的实现上面,而对那些CORBA对象在运行时所需要的策略和特性支持等完全通过一个外置的XML部署文件来进行配置。Borland在这一点上很好地借鉴了EJB容器的一些部署理念,并和目前业界流行的IoC等轻量级容器理念有很多相似和相通之处。
VisiBroker 7.0在其应用的XML部署文件中,对于涉及的CORBA对象中的方法所能声明事务的6种不同要求,熟悉J2EE技术的读者一定会联想到EJB容器的事务管理。
Borland中间件提供对SOA的优秀支持
Borland VisiBroker提供了对SOA和Web Service的优秀支持,从而确保了已有或将来的CORBA应用可以实现SOA。
VisiBroker 7.0版本中Web服务的支持已经可以内嵌到VisiBroker的进程中。换句话说,用户可以很容易将VisiBroker应用进程中的CORBA对象发布成Web服务; 而对于那些已经部署的早期版本VisiBroker,Borland提供了相应的Web容器也可以将现有的CORBA对象包装成Web服务,从而与外界的SOA世界进行整合和集成。
其次,Borland AppServer在其产品中打包了基于Apache Axis的SOAP运行环境,从而可以对AppServer中所部署的J2EE应用提供Web服务的部署和运行支持,使之实现SOA就绪。
VisiBroker高性能CORBA通告服务VisiNotify的卓越之处
VisiBroker提供了遵循CORBA标准的,高性能通告服务,也即VisiNotify服务组件。对于那些分布式环境下需要相当苛刻性能要求的异步消息处理之类的应用提供了最好的选择。
VisiNotify对于OMG组织定义的有关事件/消息传递的质量服务(QoS)提供了同类产品中最好的支持。
● VisiNotify为structured、sequence和typed事件通道提供高度优化和OMG兼容的消息转向和过滤支持。
● VisiNotify提供了OMG规范定义的事件优先级机制。
● 在生命周期控制方面,VisiNotify 支持OMG规范定义的连接持久性:在重新启动事件通道后恢复持久化事件通道、管理和代理。重新建立损坏/丢失的传输连接至pushing接收者或pulling提供者。VisiNotify恢复持久化事件通道、管理和代理以及它们的当前设置和ID(ChannelID、AdminID 和ProxyID)。VisiNotify还重新建立传输连接。
● VisiNotify还提供事件持久性以提供高可靠性的错误恢复(fail-over)功能。
Borland中间件提供CORBA、J2EE和.NET之间的完美集成
随着.NET在Windows平台应用的流行,.NET前端应用和后端的CORBA和J2EE的互联变得越来越迫切。Borland Visi-Broker在其Visi.NET组件中就提供了非常有创造性的一种解决方案,也即实现了.NET平台上的采用IIOP协议的ORB。从这一点来说,Borland的CORBA产品开发专家可以说是将IIOP协议发挥到了极致。
在.NET端,Visi.NET提供了运行支持库, 由数个assembly DLL构成,主要是实现ORB的功能,实现.NET Remoting标准的IIOP通道,从而提供.NET 平台上的CORBA IIOP和RMI/IIOP协议一级的完整支持。Visi.NET的Stubs由编译器自动产生,首先映射成.C#文件,然后编译为.NET的DLL运行库供应用代码调用。
.NET前端可以通过Visi.NET编译器生成的.NET调用接口来无缝调用部署在后台上的CORBA或EJB组件,并且在调用中可以提供企业级应用所需要的高性能、事务保证和安全性,而这些特性恰恰是目前的Web Service所做不到的。更重要的是,对于已经部署在后台的CORBA或EJB组件,不需要做任何的更改,只需获得它们客户端调用的接口或包即可实现。
目前,Visi.NET技术在香港的新世界电讯和新加坡电信的BOSS系统和J.P.摩根银行都得到了很好的应用。
链接:Borland中间件在电信行业的应用
Borland的中间件技术在电信行业长期以来一直有着非常广泛的应用,尤其是Borland的CORBA中间件产品作为全球市场上的第一位领导者,在整个业界享有很高的声誉。如美国最大的电信行业应用提供商Telcordia的OSS产品就采纳了Borland的中间件技术,思科公司的全球电子商务应用也全部建立在Borland的J2EE中间件之上等等。
而在Borland正式进入中国的短短几年时间内,Borland中间件技术也迅速被很多系统集成商所采纳并应用,例如亚信科技的在线综合业务管理计费平台(AIOBS)和电信融合计费系统(AICBS)产品,中兴通讯的智能网产品,大唐软件的电信综合网管平台,北邮通信的软交换系统等等。并且,Borland中间件在国内的电信、金融和政府等关键应用领域获得了很好的应用,例如,Borland中间件就有力地支撑起了中国移动2个省的BOSS系统的运营和发展,9个省的跨区服务以及一些网上营业厅和大客户服务系统的建设。在中国电信和网通的各类网管和智能网系统中也有相当的省份部署在Borland中间件之上,还有中国铁通的智能网计费结算系统等等。