UML软件工程组织 |
构建智能企业应用整合框架(1) |
作者:文枫 本文选自:开放系统世界——赛迪网 2003年01月15日 |
随着Internet与分布对象计算技术的飞速发展,电信、银行、电力、工商、税务等传统企业都希望把原来基于C/S架构的传统业务应用通过Web来展现。
将企业传统业务整合成面向Web的应用,将是一个分步实施的长期过程。为使其具有良好的技术前瞻性和较强的可伸缩性、可扩展性和易移植性,整体规划显得尤为重要。为了实现这一目标,EAIF系统将以J2EE/XML规范作为实现的基础,具体采用当前成熟的表示逻辑(浏览器层)+业务逻辑(应用服务器层)+数据逻辑(数据库和业务系统层)的分布应用多层结构技术。 核心+插件的配置模式 我们构建EAIF的目的,首先是建立一个可以整合某一行业所有业务应用的、面向Web的通用事务处理平台,并在此基础上,将其架构为一个可以屏蔽行业差别、透明业务处理的抽象模型。也就是通过构建统一的、可重用的系统核心控制与管理模块,在面向具体应用时,根据企业需求进行相应的业务定制,即可配置生成该模型在某一行业的应用实例。该模型将主要包括系统核心(框架)和业务功能两大部分插件。 系统核心应包括用户管理、日志管理、事务调度与管理、安全管理、统计分析等功能。业务插件则主要实现不同行业、不同企业、不同应用需求的业务功能定制(即面向Web服务的业务系统代理),具体采用业务代理EJB的实现模式。如在“网上电信局”中,电信原来97系统的业务处理功能通过CORBA接口封装在Agent97 EJB中实现,而原来的170系统的账单查询等功能,则通过Jolt调用Tuxedo Service封装在Agent170 EJB中实现等。 独立、健壮、完整的Web框架 EAIF的Web应用框架并不单纯是某个需求分析或者面向对象建模的结果,而是EAIF的一个基础部分(也就是系统的核心)。Web框架系统的最终目标是成为一个可以适应大多数企业级Web应用需要的基础系统,可以把前台(JSP或页面)开发人员和后台(EJB或业务插件)开发人员的工作完全分离,以保证高效率和低成本的开发。 Web框架系统运行在Web服务器中,而EJB或业务系统代理运行在应用服务器中。 Web框架的主要功能如下: ◆ 完全符合J2EE规范,可以搭建在任何符合J2EE标准的Web服务器中; ◆ 管理基本的数据库连接; ◆ 完善的日志系统,包括系统日志和业务日志; ◆ 管理用户类型,且用户类型可以自定义(提供用户类型开发接口); ◆ 管理某一用户类型的可用业务; ◆ 管理用户生存期; ◆ 负责业务分发,控制业务并发负载; ◆ 可自定义所需要的初始化插件(提供业务插件开发接口); ◆ 使用XML完成系统配置和数据交换; ◆ 统一的用户登录门户; ◆ 统一的XML业务数据入口和出口。 它的主要工作流程如下: ◆ 系统初始化流程(如图1) ◆ 业务处理流程(如图2) 系统架构 EAIF采用分布应用的多层结构,其架构如图3所示。 技术层次 EAIF的技术实现采用J2EE/XML/CORBA的规范,其技术层次如表1所示。同时它提供完整的二次开发接口。
事务调度与管理控制 为了对所有的业务进行统一分派和管理,并为将来可能增加的新业务预留处理接口,将在EAIF的实例中对所有的企业业务进行分类,对每个具体的业务分配相应的BusinessID。如将电信97系统所包含的业务定义为[1000,1999],将800系统业务定义为[2000,2999]等。通过一个XML文件,对所有具有确定BusinessID的相应业务进行定义和描述,并在系统启动时进行初始化。代码如下:
这样,就定义了BusinessID为1000的业务类型、代理EJB的JNDI名及最大并发数。最大并发数为0表示无限制。 在此基础上,为了实现对EAIF实例中所有业务的统一调度,可以定义事务管理器TransactionManager,它将负责读取XML初始化配置信息文件,然后根据获得的JNDI名初始化所有业务代理EJB的本地接口,并保存到Hash表。它还要分析、解包由浏览器发来的业务请求。根据BusinessID调用相应业务代理EJB远程接口中的商业方法,它还将处理结果发送回浏览器,同时记录系统日志和业务处理日志。具体处理如图4。 在EJB中集成CORBA Java和CORBA具有相当强的互补性,两种技术的紧密结合,使其成为ObjectWeb技术的主要形态,也是当前Web Service分布计算平台的基础。
|
版权所有:UML软件工程组织 |