UML软件工程组织 |
构建智能企业应用整合框架(2) |
作者:文枫 本文选自:开放系统世界——赛迪网 2003年01月15日 |
首先,Java提供了一个概念清晰、结构紧凑的分布计算模型和构件互操作的方法,为组件应用开发提供了相当的灵活性。CORBA是一种集成技术,更是一个非常完善的分布对象平台。CORBA可以扩展Java在网络、编程语言、组件边界、操作系统中的各种应用。
◆ 对象连接池 在调用CORBA服务时,如果频繁地创建和销毁接口引用对象,必然会使性能受到影响,尤其在大规模并发访问中。如果没有连接池,很可能导致CORBA服务器因排队等待的任务过多而超时,或者因为负载过重而直接导致CORBA服务器没有响应。显然,这是不允许的。所以,为了避免这种情况,我们采用对象池技术。实现方式有两种,如果应用服务器提供了配置工具,如WebLogic Server就提供了连接Tuxedo CORBA主域的配置工具WLEC,直接配置其Config XML文件即可。如果没有,则必须自己创建对象池。需要指明的是,具体的ORB管理连接池可能依赖于EAIF所采用的ORB提供厂商,比如BEA的WLE与Inprise Visibroker及IONA Orbix的ORB,它们具体实现都是不同的。 CORBA IDL接口 EAIF与业务系统接口的调用方式可采用CORBA IDL。业务系统CORBA接口的所有实现方法都封装在业务代理Stateless EJB中,通过该业务处理EJB调用WebLogic Enterprise的、Tuxedo主域提供的CORBA服务。前台JSP通过调用EJB的远程接口referApply方法,实现业务的具体申请和受理。 如何在EAIF的业务插件接口中实现具体业务处理呢?我们可以根据不同的业务类型定义IDL的不同模块,然后在一个模块中定义一类业务的多个操作接口与商业方法。假设要实现某一类业务,如电信的97业务,它可能涉及多个商业方法,如电话新装、验证用户密码、改电话特性、停机/复机、移机/拆机等。 那么如何来实现业务代理EJB呢?我们可以根据某类业务的大小设计N+1个Stateless EJB。其中AgentBusinessBean实现该类业务操作接口与事务管理控制器TranscationManager的通信。它主要根据业务的BusinessID,分发前台的业务申请到另外N个含具体业务处理方法的Stateless EJB中,具体为AgentBusinessBean1、AgentBusinessBean2...AgentBusinessBeanN。其中Stateless EJB处理10个具体的Business业务,它们共有的远程和本地接口分别为AgentBusiness和AgentBusinessHome。如果将来需要在该类业务中增加新的Business方法时,只需要根据该接口格式增加AgentBusinessBeanN+1... AgentBusinessBeanN+M,并在EAIF的config.xml中加入新业务方法及有权操作用户的声明,将business.xml中的BusinessEJBCount改为N+M,即可实现新业务的自动识别和加载,不需要修改前面的任何代码。 同样,如果需要再增加不同类型的业务,我们只需再定义一个不同的module,在IDL中声明相应的接口和方法、在CORBA服务端实现、在EJB中调用即可。当然,也需要将EAIF的config.xml进行相应的更新。但不需要对以前的代码进行任何修改,甚至根本不需要了解以前已实现的业务,只要按照EAIF的新业务开发规范即可完成新业务的开发、配置和部署。 JOLT调用Tuxedo服务 很多企业的业务系统,比如深圳电信的客户服务中心(现在的1000号,原来的112/114/180/189等)就是直接通过Tuxedo服务器直接提供业务受理。在这种情况下,再为此建立CORBA接口,一是开发代价较大,二是根本没有必要,因此完全可以直接通过Java来访问Tuxedo服务。具体实现时,可使用BEA提供的Jolt类包。如果应用服务器采用BEA的WebLogic Server,还可通过配置其中的Jolt Session Pool,实现对Tuxedo Service的业务调用与动态负载均衡。 系统功能配置采用XML文件描述,主要涉及以下XML文件: ◆ Web.xml文件 该文件是J2EE标准Web服务器使用的Web配置文件,应该放在Web服务器的WEB-INF目录下,在EAIF的启动控制Servelt中指明系统主要配置XML文件的路径; ◆ config.xml文件 在EAIF的Web框架系统中,负责描述包括数据库、日志、JNDI环境、额外的初始化插件、业务代理EJB、用户类型、用户类型可用业务等多种信息; ◆ business.xml文件 负责描述EAIF与后台业务系统的接口方式及连接池的配置。 从上面的分析可以看到,设计EAIF系统主要应包含核心框架、事务管理、系统配置、统计分析及业务插件等五个子系统。
|
版权所有:UML软件工程组织 |