论文部分内容阅读
摘要 通过对当前流行的几种中间件技术进行分析,并根据当前通信运营商计费系统发展趋势和业务复杂度,联系通信运营商计费系统的现状和技术前景,从而得出当前通信运营商计费系统的构成模型,以及基于J2EE模型的通信运营商计费系统的灵活性和可扩展性。
关键词 计费 中间件 分布式系统 J2EE
1 引言
面向对象的中间件是对象技术和分布式计算机发展的产物,面向对象将是今后中间件技术发展的主流方向,它提供了一种通信机制,透明的在异构分布式计算环境中传递对象请求,而这些对象可以位于本地或者远程机器。所以,分布式对象中间件成为一个主要的发展方向。 Java 2 Enterprise Edition(J2EE)为开发分布式的、针对服务器的应用系统提供了一种统一的技术平台,而J2EE网络技术越是目前使用最广泛的Web应用开发技术,它为多层Web应用系统提供了容器平台。
2 技术概述
2.1 几种中间件技术的比较和J2EE的特点
基于构件的分布式中间件主流技术有三种:Microsoft Net、CORBA、J2EE三者具有相似的体系结构和实现技术,比较分析如下:
Microsoft Net构筑在Windows操作系统之上,因为操作系统提供了很多特殊的支持以及性能上的优惠。另外Microsoft Net引入对多语言的支持,也是优越于J2EE的一个特性。但是Microsoft Net作为一个产品,专属于一个公司,仅仅针对一个平台,与J2EE作为一个开放式规范,多家公司支持,多种产品实现的现状比较起来。使得人们对基于Microsoft Net的应用的日后维护、升级以及与其它产品的兼容性都有所担心。
CORBA的优势在于它对异构性的屏蔽,强大的继承功能,在这一点上,其它两者就有一定的局限性了,如J2EE局限于Java语言,Microsoft Net局限于Windows操作系统。CORBA构建模型CCM,具有更加完整的模型结构。CORBA缺点是比较复杂。虽然有产品支持,但是缺乏易于使用的开发工具,从而导致开发基于CORBA的应用比较困难而且容易出错。
J2EE中间件技术,以构件化为主要特点,主要目标是简化分布式应用的开发,由此满足开发时间快、成本低,易扩展等要求。同时,J2EE集成了大量技术,不但为应用提供了多种功能,而且也提供了多种完善的服务。此外,J2EE的互相操作模型及内部Connector机制实现了强大的集成能力。目前,多家公司已发布了支持J2EE规范的中间件产品,例如:BEA公司的Weblogic,Oracle公司的Oraclegi,IBM的WebSphere等;J2EE中间件技术具有良好的实用价值和应用前景。
2.2 J2EE体系结构
J2EE体系结构分为4层:如图1所示:
(1)客户端层:该层直接与用户交互。J2EE支持多种客户端,它既可以通过Internet访问的Web浏览器客户端,也可以通过企业Internet运行的瘦客户端。
(2)Web层:该层是为基于Web的应用程序服务的,J2EE中的JavaServer Page和Java Servlet技术可以访问封装有商务逻辑的组件,并负责响应Web客户端的请求。
(3)EJB层:Enterprise Java Bean封装了商务逻辑,完成企业计算。该层提供了多个层次的服务,如事务处理、安全性、资源连接等。EJB层建立在一个强大的分布计算模式之上,程序员用这种模式编写EJB,可以不关心诸如组件通信、事务处理等地层工作,而只需把注意力放在商务逻辑的实现上。
(4)EIS(Enterprise Information System):企业信息系统包括企业已有系统(如ERP系统、数据库系统、文件系统)。J2EE提供了多种技术来访问这些系统,如利用JDBC技术来访问。
3 系统现状和需求分析
3.1 系统现状
目前,通信运营商建有大量的系统,覆盖业务运营、客户服务、市场营销、经营分析、网络管理以及企业业务管理的各个方面。支撑系统一般包括业务支撑系统(BSS)、网络管理系统(OSS)、管理支撑系统(MSS)。为通信运营商的运营管理过程提供支撑能力是建设运营支撑系统的主要目的。随着运营支撑系统整体结构与功能的日益复杂化,技术在系统建设过程中的重要性日益突出。在运营系统发展之初,由于业务需求小、系统功能结构简单、系统数据量小等原因,几乎不用考虑数据的一致性、信息交互、端到端支撑、资源共享等问题,随着通信运营商的业务不断扩张,针对系统数量增多、功能存在重叠的状况,必须对现有系统进行应用上的整合或者重新开发,从而减少系统数量,改进系统技术架构,发挥系统整体功能的优势。通信运营商计费系统是运营系统中的重要组成部分,它必须是一个具有良好可扩展的系统,不但满足现状更要满足未来发展的需要,该系统需具备可扩展性、稳定性、可移植性、健壮性等特点。同时系统开发时间不能太长,否则系统开发出来后发现已经过时,那么产品将失去它的市场价值。所以在选择开发技术和开发框架上尤为重要。
通信运营商通过对用户进行管理和计费,以此实现对此项业务运营的支撑和管理。经过对通信运营商的运营现状分析,整个通信运营商计费系统划分为前台和后台两大部分,后台主要是数据服务,包括数据采集和各种基础数据管理。前台部分主要是对运营的管理,按功能特点可以划分为以下几个部分:用户管理系统、参数管理系统、资费管理系统、用户网上查询系统、营业员前台缴费系统。
3.2 需求分析
由于通信运营商计费系统是一个功能复杂的应用软件系统,在这里只讨论对于基于Web的前台缴费系统的讨论。前台缴费目前存在四种形式,一是到通信运营商经营的营业厅进行缴费,二是通过代收机构进行缴费,三是通过网上营业厅进行充值卡缴费,四是通过电话进行充值卡缴费。不管何种缴费方式,最终用户的缴费记录都要存储到后台数据库中。由于通信运营商目前客户群日益庞大,缴费方式多样化;同时随着新的缴费渠道和方式的不断出现,如第三方支付、网上银行支付、手机银行支付等。而另一方面,通信运营商的计费系统统一要求进行省级集中,即所有的计费数据集中到省里面,而用户日常缴费分散到各个地市、县、乡,这就要求计费系统集中与分散相结合,采用省级集中计费,缴费采用分散方式。最后,由于缴费是通过人为操作进行的,在操作过程中难免出现差错,但是对于用户而言,是不允许把费用缴纳到错误号码上的,所以出现错误,必须有回退,容错机制。 对于通信运营商计费系统现状和需求进行分析后,可以得出通信运营商计费系统必须具有以下功能:
(1)具有灵活的数据修改功能。
(2)计费处理的实时性和并发性:计费系统必须响应时间短和具有良好的并发处理能力。
(3)收费方式的灵活性:计费系统必须在计费、收费、和催缴功能全过程给予支持并可以任意选用按何种方式和按月、季度、半年等方式付费。
(4)良好的可维护性和开放性:系统是面向未来的,随着通信运营商业务不断扩大和新缴费方式的不断出现,对于计费系统的可维护性和开放性提出了更高的要求。
(5)用户界面友好、操作方便:友好的系统界面,提高系统的可操作性的人机交互功能,最大限度的方便用户使用。
4 系统实现
通过前面对几种中间件的比较分析,对于集中计费系统构建在J2EE基础上进行总体设计,目的是保证系统在异构环境下正常工作,可对集中计费系统进行安全性、完整性控制,提高应用处理的并发性、吞吐量,增强网络带宽的利用率。
前台缴费系统采用三层应用结构模型,即浏览器、Web服务器、应用服务器(中间件)、Oracle数据库。
三层分布式体系结构的表示层、应用逻辑层和数据存储层是彼此分离的。这使得系统具有可伸缩性,这是因为它的数据连接之类的资源可以共享,每一个消耗资源的客户应用程序并不直接访问数据库服务器,而是由客户应用程序与业务逻辑层进行通信。一个应用逻辑实例可以向多个客户提供服务,降低了资源消耗,提高了伸缩性。此外,应用逻辑实体可以独立于任何客户应用程序来设计。这样对于很多应用程序来说,就提供了非常多的灵活性和重复使用的潜力。定义公共接口之后的业务逻辑的封闭,使得开发者可以创建可以重复使用服务的一个载体。
一个J2EE 应用程序的核心部分在服务器端,这个服务器端运行环境就是应用服务器。Sun 公司通过联合多家公司制定统一的规范,不同的服务器供应商可以开发不同的应用服务器,比如 BEA公司的WebLogic等,但是每个应用服务器都必须遵循相同的规范,这样同一个J2EE应用程序就可以部署到不同的应用服务器中去。WebLogic的结构如图2所示。
BEA WebLogic Platform 包括以下几个部分。
(1)BEA WebLogic Workshop
BEA WebLogic Workshop是一个开发环境,用于为 BEA WebLogic Platform构建企业级J2EE应用。WebLogic Workshop可以帮助所有开发人员以前所未有的效率快速创建、测试和部署企业级的Web应用、XML Web服务、EJB、门户和业务流程管理(BPM)应用。
(2)BEA WebLogic Integration
BEA WebLogic Integration是一个基于标准的平台,可以用于应用集成、业务流程管理、工作流、Web服务和B2B集成。WebLogic Integration为用户提供统一的业务集成框架、简化的生产和管理,以及新的可扩展架构。该架构可以快速地集成并整合应用、业务流程和商务合作伙伴。
(3)BEA WebLogic Portal
BEA WebLogic Portal为门户开发提供业内领先的企业级门户基础结构。它为门户开发提供丰富的、图形化的环境,并为业务专家提供基于浏览器的集成工具。一旦构建完成,你的门户就可以在业务需求发生变化时快速适应变化。
(4)BEA WebLogic Server
BEA WebLogic Server是J2EE工业强度的应用服务器,它是BEA WebLogic Platform的基础。
(5)BEA Liquid Data for WebLogic
BEA Liquid Data for WebLogic 为实时地从分布资源中快速访问、集成和共享关键业务信息提供了最有效的方式。它为前端办公应用——比如门户和Web应用,以及业务流程处理增强了信息的可视性。
通过对Weblogic平台的技术分析,并结合通信运营商缴费系统的特点,通信运营商集中计费系统采用J2EE结构进行设计和采用的中间件Weblogic实现系统,能够最大限度满足计费系统的复杂逻辑和并发性要求,同时可以减轻网络压力,达到省集中数据和分散收费的目的。
5 结束语
J2EE平台是集分布式应用系统的开发、发布和管理为一体的Java技术,它提供了强大的功能支持基于组件的多层计算机体系应用系统的开发和发布。J2EE标准的多层结构有效的适应的基于Web和互联网应用,对于电信运营商经营方式的转变起到了极大的促进作用,而人们现状越来越依赖于网络进行各种消费活动,对于通信消费也是如此。随着人们对通信服务要求越来越高,所要求的技术支撑越来越复杂,而J2EE作为核心技术,可重复使用的服务器组件EJB,使得开发分布式应用系统变得更加有效,简单。随着通信系统越来越复杂化,通信计费系统所需技术也随着复杂化,而基于J2EE标准下的分布式应用系统将成为未来解决问题,提高企业经营能力的一项主流技术。
参 考 文 献
[1] 朱卫平,陈英. 基于J2EE中间件技术的分布式系统建模. 电脑知识与技术(学术交流);2007年21期
[2] 宗雷,基于J2EE架构的电信运营计费系统的设计与实现. 南京信息工程大学;2009年5月
[3] 袁保良等,Microsoft.net 和J2EE架构开发技术分析. 计算机工程;2004年S1期
关键词 计费 中间件 分布式系统 J2EE
1 引言
面向对象的中间件是对象技术和分布式计算机发展的产物,面向对象将是今后中间件技术发展的主流方向,它提供了一种通信机制,透明的在异构分布式计算环境中传递对象请求,而这些对象可以位于本地或者远程机器。所以,分布式对象中间件成为一个主要的发展方向。 Java 2 Enterprise Edition(J2EE)为开发分布式的、针对服务器的应用系统提供了一种统一的技术平台,而J2EE网络技术越是目前使用最广泛的Web应用开发技术,它为多层Web应用系统提供了容器平台。
2 技术概述
2.1 几种中间件技术的比较和J2EE的特点
基于构件的分布式中间件主流技术有三种:Microsoft Net、CORBA、J2EE三者具有相似的体系结构和实现技术,比较分析如下:
Microsoft Net构筑在Windows操作系统之上,因为操作系统提供了很多特殊的支持以及性能上的优惠。另外Microsoft Net引入对多语言的支持,也是优越于J2EE的一个特性。但是Microsoft Net作为一个产品,专属于一个公司,仅仅针对一个平台,与J2EE作为一个开放式规范,多家公司支持,多种产品实现的现状比较起来。使得人们对基于Microsoft Net的应用的日后维护、升级以及与其它产品的兼容性都有所担心。
CORBA的优势在于它对异构性的屏蔽,强大的继承功能,在这一点上,其它两者就有一定的局限性了,如J2EE局限于Java语言,Microsoft Net局限于Windows操作系统。CORBA构建模型CCM,具有更加完整的模型结构。CORBA缺点是比较复杂。虽然有产品支持,但是缺乏易于使用的开发工具,从而导致开发基于CORBA的应用比较困难而且容易出错。
J2EE中间件技术,以构件化为主要特点,主要目标是简化分布式应用的开发,由此满足开发时间快、成本低,易扩展等要求。同时,J2EE集成了大量技术,不但为应用提供了多种功能,而且也提供了多种完善的服务。此外,J2EE的互相操作模型及内部Connector机制实现了强大的集成能力。目前,多家公司已发布了支持J2EE规范的中间件产品,例如:BEA公司的Weblogic,Oracle公司的Oraclegi,IBM的WebSphere等;J2EE中间件技术具有良好的实用价值和应用前景。
2.2 J2EE体系结构
J2EE体系结构分为4层:如图1所示:
(1)客户端层:该层直接与用户交互。J2EE支持多种客户端,它既可以通过Internet访问的Web浏览器客户端,也可以通过企业Internet运行的瘦客户端。
(2)Web层:该层是为基于Web的应用程序服务的,J2EE中的JavaServer Page和Java Servlet技术可以访问封装有商务逻辑的组件,并负责响应Web客户端的请求。
(3)EJB层:Enterprise Java Bean封装了商务逻辑,完成企业计算。该层提供了多个层次的服务,如事务处理、安全性、资源连接等。EJB层建立在一个强大的分布计算模式之上,程序员用这种模式编写EJB,可以不关心诸如组件通信、事务处理等地层工作,而只需把注意力放在商务逻辑的实现上。
(4)EIS(Enterprise Information System):企业信息系统包括企业已有系统(如ERP系统、数据库系统、文件系统)。J2EE提供了多种技术来访问这些系统,如利用JDBC技术来访问。
3 系统现状和需求分析
3.1 系统现状
目前,通信运营商建有大量的系统,覆盖业务运营、客户服务、市场营销、经营分析、网络管理以及企业业务管理的各个方面。支撑系统一般包括业务支撑系统(BSS)、网络管理系统(OSS)、管理支撑系统(MSS)。为通信运营商的运营管理过程提供支撑能力是建设运营支撑系统的主要目的。随着运营支撑系统整体结构与功能的日益复杂化,技术在系统建设过程中的重要性日益突出。在运营系统发展之初,由于业务需求小、系统功能结构简单、系统数据量小等原因,几乎不用考虑数据的一致性、信息交互、端到端支撑、资源共享等问题,随着通信运营商的业务不断扩张,针对系统数量增多、功能存在重叠的状况,必须对现有系统进行应用上的整合或者重新开发,从而减少系统数量,改进系统技术架构,发挥系统整体功能的优势。通信运营商计费系统是运营系统中的重要组成部分,它必须是一个具有良好可扩展的系统,不但满足现状更要满足未来发展的需要,该系统需具备可扩展性、稳定性、可移植性、健壮性等特点。同时系统开发时间不能太长,否则系统开发出来后发现已经过时,那么产品将失去它的市场价值。所以在选择开发技术和开发框架上尤为重要。
通信运营商通过对用户进行管理和计费,以此实现对此项业务运营的支撑和管理。经过对通信运营商的运营现状分析,整个通信运营商计费系统划分为前台和后台两大部分,后台主要是数据服务,包括数据采集和各种基础数据管理。前台部分主要是对运营的管理,按功能特点可以划分为以下几个部分:用户管理系统、参数管理系统、资费管理系统、用户网上查询系统、营业员前台缴费系统。
3.2 需求分析
由于通信运营商计费系统是一个功能复杂的应用软件系统,在这里只讨论对于基于Web的前台缴费系统的讨论。前台缴费目前存在四种形式,一是到通信运营商经营的营业厅进行缴费,二是通过代收机构进行缴费,三是通过网上营业厅进行充值卡缴费,四是通过电话进行充值卡缴费。不管何种缴费方式,最终用户的缴费记录都要存储到后台数据库中。由于通信运营商目前客户群日益庞大,缴费方式多样化;同时随着新的缴费渠道和方式的不断出现,如第三方支付、网上银行支付、手机银行支付等。而另一方面,通信运营商的计费系统统一要求进行省级集中,即所有的计费数据集中到省里面,而用户日常缴费分散到各个地市、县、乡,这就要求计费系统集中与分散相结合,采用省级集中计费,缴费采用分散方式。最后,由于缴费是通过人为操作进行的,在操作过程中难免出现差错,但是对于用户而言,是不允许把费用缴纳到错误号码上的,所以出现错误,必须有回退,容错机制。 对于通信运营商计费系统现状和需求进行分析后,可以得出通信运营商计费系统必须具有以下功能:
(1)具有灵活的数据修改功能。
(2)计费处理的实时性和并发性:计费系统必须响应时间短和具有良好的并发处理能力。
(3)收费方式的灵活性:计费系统必须在计费、收费、和催缴功能全过程给予支持并可以任意选用按何种方式和按月、季度、半年等方式付费。
(4)良好的可维护性和开放性:系统是面向未来的,随着通信运营商业务不断扩大和新缴费方式的不断出现,对于计费系统的可维护性和开放性提出了更高的要求。
(5)用户界面友好、操作方便:友好的系统界面,提高系统的可操作性的人机交互功能,最大限度的方便用户使用。
4 系统实现
通过前面对几种中间件的比较分析,对于集中计费系统构建在J2EE基础上进行总体设计,目的是保证系统在异构环境下正常工作,可对集中计费系统进行安全性、完整性控制,提高应用处理的并发性、吞吐量,增强网络带宽的利用率。
前台缴费系统采用三层应用结构模型,即浏览器、Web服务器、应用服务器(中间件)、Oracle数据库。
三层分布式体系结构的表示层、应用逻辑层和数据存储层是彼此分离的。这使得系统具有可伸缩性,这是因为它的数据连接之类的资源可以共享,每一个消耗资源的客户应用程序并不直接访问数据库服务器,而是由客户应用程序与业务逻辑层进行通信。一个应用逻辑实例可以向多个客户提供服务,降低了资源消耗,提高了伸缩性。此外,应用逻辑实体可以独立于任何客户应用程序来设计。这样对于很多应用程序来说,就提供了非常多的灵活性和重复使用的潜力。定义公共接口之后的业务逻辑的封闭,使得开发者可以创建可以重复使用服务的一个载体。
一个J2EE 应用程序的核心部分在服务器端,这个服务器端运行环境就是应用服务器。Sun 公司通过联合多家公司制定统一的规范,不同的服务器供应商可以开发不同的应用服务器,比如 BEA公司的WebLogic等,但是每个应用服务器都必须遵循相同的规范,这样同一个J2EE应用程序就可以部署到不同的应用服务器中去。WebLogic的结构如图2所示。
BEA WebLogic Platform 包括以下几个部分。
(1)BEA WebLogic Workshop
BEA WebLogic Workshop是一个开发环境,用于为 BEA WebLogic Platform构建企业级J2EE应用。WebLogic Workshop可以帮助所有开发人员以前所未有的效率快速创建、测试和部署企业级的Web应用、XML Web服务、EJB、门户和业务流程管理(BPM)应用。
(2)BEA WebLogic Integration
BEA WebLogic Integration是一个基于标准的平台,可以用于应用集成、业务流程管理、工作流、Web服务和B2B集成。WebLogic Integration为用户提供统一的业务集成框架、简化的生产和管理,以及新的可扩展架构。该架构可以快速地集成并整合应用、业务流程和商务合作伙伴。
(3)BEA WebLogic Portal
BEA WebLogic Portal为门户开发提供业内领先的企业级门户基础结构。它为门户开发提供丰富的、图形化的环境,并为业务专家提供基于浏览器的集成工具。一旦构建完成,你的门户就可以在业务需求发生变化时快速适应变化。
(4)BEA WebLogic Server
BEA WebLogic Server是J2EE工业强度的应用服务器,它是BEA WebLogic Platform的基础。
(5)BEA Liquid Data for WebLogic
BEA Liquid Data for WebLogic 为实时地从分布资源中快速访问、集成和共享关键业务信息提供了最有效的方式。它为前端办公应用——比如门户和Web应用,以及业务流程处理增强了信息的可视性。
通过对Weblogic平台的技术分析,并结合通信运营商缴费系统的特点,通信运营商集中计费系统采用J2EE结构进行设计和采用的中间件Weblogic实现系统,能够最大限度满足计费系统的复杂逻辑和并发性要求,同时可以减轻网络压力,达到省集中数据和分散收费的目的。
5 结束语
J2EE平台是集分布式应用系统的开发、发布和管理为一体的Java技术,它提供了强大的功能支持基于组件的多层计算机体系应用系统的开发和发布。J2EE标准的多层结构有效的适应的基于Web和互联网应用,对于电信运营商经营方式的转变起到了极大的促进作用,而人们现状越来越依赖于网络进行各种消费活动,对于通信消费也是如此。随着人们对通信服务要求越来越高,所要求的技术支撑越来越复杂,而J2EE作为核心技术,可重复使用的服务器组件EJB,使得开发分布式应用系统变得更加有效,简单。随着通信系统越来越复杂化,通信计费系统所需技术也随着复杂化,而基于J2EE标准下的分布式应用系统将成为未来解决问题,提高企业经营能力的一项主流技术。
参 考 文 献
[1] 朱卫平,陈英. 基于J2EE中间件技术的分布式系统建模. 电脑知识与技术(学术交流);2007年21期
[2] 宗雷,基于J2EE架构的电信运营计费系统的设计与实现. 南京信息工程大学;2009年5月
[3] 袁保良等,Microsoft.net 和J2EE架构开发技术分析. 计算机工程;2004年S1期