J2EE 应用服务器技术
2007-12-23 12:38:28 来源:WEB开发网核心提示:J2EE 应用服务器技术概述Internet 应用发展到今天,应用技术日新月异,J2EE 应用服务器技术,新技术不断创造着互联网络新能力,仔细研究现代互联网络的发展,选择在1)中定义的服务器描述文件名,可以看到该描述文件的信息,我们可以发现,随着互联网应用的数据驱动与处理能力的扩展
J2EE 应用服务器技术
概述
Internet 应用发展到今天,应用技术日新月异,新技术不断创造着互联网络新能力。仔细研究现代互联网络的发展,我们可以发现,随着互联网应用的数据驱动与处理能力的扩展,新一轮互联网应用的战略转变已经拉开帷幕。而应用程序服务器则是构架这种崭新应用的关键平台。
让我们回头看看应用计算技术发展的几个主要阶段,便可以了解应用服务器产生的必然性:最先出现的是主机模式,它是一种单一的体系结构,最大的缺点就是在应用和用户之间无法实现数据共享及协作。其后便出现了C/S(Client/Server)模式,它解决了数据共享的问题,但分布式协作亦未能实现。随之又产生了新的问题,基于C/S的这种胖客户机模式使系统的维护和升级成本直线上升。因此便出现了Web技术,它不仅解决了数据共享,而且瘦客户端模式使系统的维护和升级成本大大减小。由于电子商务系统的部署,及基于Web的应用逐渐从2层架构向3层架构演进,处于3层结构中间层上的应用服务器(application Server)便受到了越来越多的重视,它担负着提供应用开发环境以及承载应用服务程序运行的功能,通常也被叫做应用服务中间件。
就像操作系统有Unix、Windows NT、 linux一样,应用服务器也有不同的标准, 其中Com、Corba 和J2EE是3个最主要的,Com局限于Windows NT,由Microsoft所倡导;Corba标准能够跨平台,但由于各Unix厂商对Corba执行不够彻底,互联比较困难;而由Sun公司发起的J2EE是现在市场上的主流产品。J2EE标准是过去几年中开发的许多重要应用最终促成的一个与厂家无关的公共标准。它将许多分散的java技术整合到一起,组合成一个完整的企业标准。
J2EE 应用服务器(Application Server)采用目前国际最先进的开发理念、拥有许多适合基于Web 的应用系统需求的特点:
三层结构体系---最适合Internet环境,可以使系统有很强的可扩展性和可管理性。
分布式环境---可以保证系统的稳定性,同时拥有较高的性能。
面向对象的模块化组件设计---可以提高开发速度,降低开发成本。
采用JAVA技术---完全跨平台,适应Internet需要,并能得到大多数厂商支持,保护用户投资。
J2EE 应用服务器的这些特点和优势使其普遍为业界所看好,并成为软件市场新一轮竞争的热点。据预测,到2005年仅直接许可证收入就可使之市场规模达到25亿美元。目前,除了第一个在业界推出应用服务器产品的SilverStream公司和老牌中间件厂商BEA以外,HP 、IBM、Sun等IT巨头都瞄准了这块市场,演绎着互联网大舞台上的软件"战国时代"。
J2EE模型
为了降低成本,并加快企业应用程序的设计和开发,J2EE 平台提供了一个基于组件的方法,来设计、开发、装配及部署企业应用程序。J2EE 平台提供了多层的分布式的应用模型、组件再用、一致化的安全模型以及灵活的事务控制。使用户不仅可以比以前更快的速度向市场推出创造性的客户解决方案,而且,平台独立的、基于组件的J2EE 解决方案不会被束缚在任何一个厂商的产品和API 上 。
J2EE提供了一个企业级的计算模型和运行环境用于开发和部署多层体系结构的应用(附图所示为J2EE的应用模型)。
图1. J2EE应用模型
客户层(Client Tier )
J2EE 应用可以是基于Web 的,也可以是不基于Web 的。
在基于Web 的J2EE 应用中,用户的浏览器在客户层中运行,并从一个Web服务器上下载WEB 层中的静态Html 页面或由jsp 或servlets 生成的动态HTML 页面 。
在不基于Web 的J2EE 应用程序中,一个独立的客户程序,可以不运行在一个HTML 页面中,而是运行在其它一些基于网络系统(比如手持设备或汽车电话)中的applet 程序。在客户层中运行,并在不经过Web 层的情况下访问EnterPRise Beans 。该不基于Web 的客户层可能也包括一个JavaBeans 类来管理用户输入,并将该输入发送到在企业层中运行的Enterprise Bean 类来处理。
Web 层
J2EE Web 组件可以由JSP 页面、基于Web 的applets 以及显示HTML 页面的servlets 组成。
调用servlets 或者JSP 页面的HTML 页面在应用程序组装时与Web 组件打包在一起。就像客户层一样,Web 层可能包括一个JavaBeans 类来管理用户输入,并将输入发送到在业务层中运行的Enterprise Beans 类来处理 。
运行在客户层的Web 组件依赖容器来支持诸如客户请求和响应及Enterprise Bean 查询等。
业务层
作为解决或满足某个特定业务领域(比如银行、保险、零售或金融业)需要的逻辑的业务代码由运行在业务层的Enterprise Beans 来执行。一个Enterprise Beans 从客户程序处接收数据,对数据进行处理(如果需要),再将数据发送到企业信息系统层存储。一个Enterprise Beans 还从存储中检索数据,并将数据送回客户程序 。运行在业务层的Enterprise Beans依赖于容器来为诸如事务、生命期、状态管理、多线程及资源存储池等提供通常都是非常复杂的系统级代码。
业务层经常被称作Enterprise JavaBeans (EJB )层 。业务层和Web 层一起构成了3 层J2EE应用的中间层, 而其它两层是客户层和企业信息系统层.
企业信息系统层
企业信息系统层运行企业信息系统软件。
J2EE应用服务器上的延伸和发展
有了标准的J2EE应用服务器,企业便可以根据自己的需求,来构建新的应用系统了。但是,当企业构建新的系统时,一定还会考虑到诸如以下的问题:如何连接企业已有的各种系统;如何为客户和员工提供个性化的服务;如何使新的系统更具有灵活性;如何更快地建立新的系统;如何降低系统的运行和维护成本等。了解到企业这方面的需求,各个厂家纷纷着手,在应用服务器产品之上,推出解决以上问题的产品。遗憾的是许多厂家推出的这方面产品,并没有走J2EE标准化的道路。从这一点上来讲,SilverStream公司推出的eXtendTM平台对客户似乎具有更大的吸引力,更能保护企业过去和现有的各种投资。
SilverStream eXtend平台是SilverStream产品在新的Web服务技术驱动下新型架构的组成,它不但提供了基于J2EE标准的运行环境和快速开发、部署工具外,而且还提供了基于xml标准的集成服务器和建立企业应用的标准平台及一些中间件产品。
SilverStream eXtend 平台的开放性还表现在对Web Service标准的支持,据Gartner Group预测:"在2000年,10%的业务系统采用基于面向服务的框架结构(Services-Oriented Architecture)而设计,而到2005年,至少60%的新业务应用系统将采用SOA体系架构设计。"随着Web服务技术的逐渐成熟和MicroSoft Visual Studio.Net平台的发布,越来越多的业务应用将支持Web Services技术,在eXtend平台中,系统完全支持Web Services技术,并可以对整个应用系统进行Web Services封装,使得任何系统、任何平台都可以通过Web Services技术进行服务级的交互。
图2. SilverStream eXtend TM平台技术框架
在SilverStream eXtend TM平台的技术框架中,主要包括:
SilverStream eXtend TM Application Server
提供安全、可靠、稳定、满足业界J2EE和Web Service标准的应用运行环境,完全符合J2EE1.2 & J2EE1.3与Web Services标准,并通过了Sun J2EE1.3 的认证。它具有高性能的CORBA ORB和JMS支持技术;支持应用的集群机制,具有远程部署功能;具有Server级和session级的故障恢复机制等。
SilverStream eXtend TM Composer
Composer是一种万能的企业数据连接器。它解决了新系统与企业原有的各种系统之间的连接问题。提供多种企业数据的连接方式以及对遗留信息系统的改造方式,包括各种异构的数据库系统、EDI、SAP、CICS、Tuxido、MQseries、JMS、Telnet、Lotus、通过3270,5250终端访问的主机系统等,使企业可以在不中断原有业务工作的情况下,实现对旧有系统的Web改造。
Composer通过对企业原有系统的交换信息进行XML转换后向新系统传递,同时又将新系统发来的XML信息转换为企业原有系统的信息格式,进而实现新系统与原有系统的对话,并通过封装实现XML、J2EE、Web Service升级改造。可将封装后的应用部署到多种主流的J2EE应用服务器,包括SilverStream eXtend Application Server、IBM WebSphere、BEA Weblogic。
SilverStream eXtend TM Director
Director是J2EE应用服务器上的企业级应用解决方案。完全符合J2EE的特性,更像是J2EE的无限延伸,有效保护企业的投资,确保应用的灵活性、标准性和快速上线性。
1.具有灵活的用户个性化技术,开发高度定制的Web应用;
2.支持各种设备的访问方式;
3.独立、可扩展的子系统,可用于工作流、内容管理、个性化及业务规则,能灵活提高业务目标及增加客户满意度;
4.具有松散灵活的可插拔结构体系,可以自由选择模块化服务;
5.可将应用部署到多种主流的J2EE应用服务器,包括SilverStream eXtend Application Server、IBM WebSphere、BEA Weblogic。
SilverStream eXtend TM WorkBench
Workbench是一种综合开发环境,用以简化和加速J2EE和Web Services应用软件的开发和部署
1.易于使用的J2EE环境,支持主流的J2EE应用服务器;
2.J2EE和Web Services应用程序的快速开发和部署;
3.使用灵活的XML、JSP和Java编辑器;
4.标准的UDDI浏览器,方便发布及查找Web Services
5.具有与eXtend TM Director、eXtend TM Composer集成的能力,非常方便的开发和部署2个产品的应用;
SilverStream jBroker产品
包括多种简单、灵活而使用方便的中间件产品:
1.jBroker Web - 高效的Web Services开发及运行引擎;
2.jBroker ORB - 高效的、支持业界标准的CORBA服务器;
3.jBroker MQ - 高效的、支持JMS技术标准的消息服务器
4.jBroker TM - 高效而安全的事务管理器
从以上对SilverStream eXtend平台的介绍中,可以看到eXtend平台既解决了构建新系统之时与原有系统的连接性问题,又解决了新系统的灵活性、快速上线性、科学性等问题。同时,又不失系统的开放性和标准性,最大程度地保护了企业的各种投资。我们确信,各个厂商在J2EE应用服务器上的延伸和扩展一定会最终回到标准性的道路上。
J2EE应用程序的开发与发布
目前,各大厂商基本上都提供J2EE的开发环境和部署工具。但从简单性和开放性的角度来说,SilverStream eXtend Workbench似乎更占优势。
SilverStream eXtend Workbench是SilverStream公司在2000年发布的。用于开发J2EE和Web Service应用、并可以部署到多种J2EE应用服务器之上,如SilverStream eXtend Application Server、IBM Websphere Application Server、 BEA Weblogic Server、Jakarta Tomcat 、Oracle9i Application Server 、Sun J2EE Reference Implementation Server 等。
eXtend Workbench作为一个面向服务的集成开发环境,能够加速并简化对合乎标准的应用程序的开发部署。在Workbench中,每个项目都要以压缩包的形式组织,如可以为应用程序建立面向EAR、WARs 、EJB JARs等的项目。一个项目中可能还包括多个子项目,如一个EAR项目可能包括多个WAR项目和多个JAR项目。
下面以部署到SilverStream eXtend Application Server为例,说明eXtend Workbench用于部署J2EE应用的简单性。
1) 定义一个服务器描述文件
服务器描述文件用来存储应用服务器的信息,即部署到哪种应用服务器及此应用服务器的相关信息。从Server type下拉框中可以选择多种应用服务器进行部署。
图3. 新建服务器描述文件
2) 为服务器建立一个部署计划
部署计划用来指定部署描述符中的设置。
图4. 建立部署计划
选择将要部署的项目及选取的服务器的版本,点击OK之后系统自动将部署计划显示在窗口中。
3) 指定必要的部署设置信息
图5. 设置部署信息
在出现的部署信息对话框中,选择在1)中定义的服务器描述文件名。可以看到该描述文件的信息。
4) 部署应用程序压缩包
只要点击上图中的Deploy按钮便可以完成项目的部署。
概述
Internet 应用发展到今天,应用技术日新月异,新技术不断创造着互联网络新能力。仔细研究现代互联网络的发展,我们可以发现,随着互联网应用的数据驱动与处理能力的扩展,新一轮互联网应用的战略转变已经拉开帷幕。而应用程序服务器则是构架这种崭新应用的关键平台。
让我们回头看看应用计算技术发展的几个主要阶段,便可以了解应用服务器产生的必然性:最先出现的是主机模式,它是一种单一的体系结构,最大的缺点就是在应用和用户之间无法实现数据共享及协作。其后便出现了C/S(Client/Server)模式,它解决了数据共享的问题,但分布式协作亦未能实现。随之又产生了新的问题,基于C/S的这种胖客户机模式使系统的维护和升级成本直线上升。因此便出现了Web技术,它不仅解决了数据共享,而且瘦客户端模式使系统的维护和升级成本大大减小。由于电子商务系统的部署,及基于Web的应用逐渐从2层架构向3层架构演进,处于3层结构中间层上的应用服务器(application Server)便受到了越来越多的重视,它担负着提供应用开发环境以及承载应用服务程序运行的功能,通常也被叫做应用服务中间件。
就像操作系统有Unix、Windows NT、 linux一样,应用服务器也有不同的标准, 其中Com、Corba 和J2EE是3个最主要的,Com局限于Windows NT,由Microsoft所倡导;Corba标准能够跨平台,但由于各Unix厂商对Corba执行不够彻底,互联比较困难;而由Sun公司发起的J2EE是现在市场上的主流产品。J2EE标准是过去几年中开发的许多重要应用最终促成的一个与厂家无关的公共标准。它将许多分散的java技术整合到一起,组合成一个完整的企业标准。
J2EE 应用服务器(Application Server)采用目前国际最先进的开发理念、拥有许多适合基于Web 的应用系统需求的特点:
J2EE 应用服务器的这些特点和优势使其普遍为业界所看好,并成为软件市场新一轮竞争的热点。据预测,到2005年仅直接许可证收入就可使之市场规模达到25亿美元。目前,除了第一个在业界推出应用服务器产品的SilverStream公司和老牌中间件厂商BEA以外,HP 、IBM、Sun等IT巨头都瞄准了这块市场,演绎着互联网大舞台上的软件"战国时代"。
J2EE模型
为了降低成本,并加快企业应用程序的设计和开发,J2EE 平台提供了一个基于组件的方法,来设计、开发、装配及部署企业应用程序。J2EE 平台提供了多层的分布式的应用模型、组件再用、一致化的安全模型以及灵活的事务控制。使用户不仅可以比以前更快的速度向市场推出创造性的客户解决方案,而且,平台独立的、基于组件的J2EE 解决方案不会被束缚在任何一个厂商的产品和API 上 。
J2EE提供了一个企业级的计算模型和运行环境用于开发和部署多层体系结构的应用(附图所示为J2EE的应用模型)。
图1. J2EE应用模型
J2EE 应用可以是基于Web 的,也可以是不基于Web 的。
在基于Web 的J2EE 应用中,用户的浏览器在客户层中运行,并从一个Web服务器上下载WEB 层中的静态Html 页面或由jsp 或servlets 生成的动态HTML 页面 。
在不基于Web 的J2EE 应用程序中,一个独立的客户程序,可以不运行在一个HTML 页面中,而是运行在其它一些基于网络系统(比如手持设备或汽车电话)中的applet 程序。在客户层中运行,并在不经过Web 层的情况下访问EnterPRise Beans 。该不基于Web 的客户层可能也包括一个JavaBeans 类来管理用户输入,并将该输入发送到在企业层中运行的Enterprise Bean 类来处理。
J2EE Web 组件可以由JSP 页面、基于Web 的applets 以及显示HTML 页面的servlets 组成。
调用servlets 或者JSP 页面的HTML 页面在应用程序组装时与Web 组件打包在一起。就像客户层一样,Web 层可能包括一个JavaBeans 类来管理用户输入,并将输入发送到在业务层中运行的Enterprise Beans 类来处理 。
运行在客户层的Web 组件依赖容器来支持诸如客户请求和响应及Enterprise Bean 查询等。
作为解决或满足某个特定业务领域(比如银行、保险、零售或金融业)需要的逻辑的业务代码由运行在业务层的Enterprise Beans 来执行。一个Enterprise Beans 从客户程序处接收数据,对数据进行处理(如果需要),再将数据发送到企业信息系统层存储。一个Enterprise Beans 还从存储中检索数据,并将数据送回客户程序 。运行在业务层的Enterprise Beans依赖于容器来为诸如事务、生命期、状态管理、多线程及资源存储池等提供通常都是非常复杂的系统级代码。
业务层经常被称作Enterprise JavaBeans (EJB )层 。业务层和Web 层一起构成了3 层J2EE应用的中间层, 而其它两层是客户层和企业信息系统层.
企业信息系统层运行企业信息系统软件。
J2EE应用服务器上的延伸和发展
有了标准的J2EE应用服务器,企业便可以根据自己的需求,来构建新的应用系统了。但是,当企业构建新的系统时,一定还会考虑到诸如以下的问题:如何连接企业已有的各种系统;如何为客户和员工提供个性化的服务;如何使新的系统更具有灵活性;如何更快地建立新的系统;如何降低系统的运行和维护成本等。了解到企业这方面的需求,各个厂家纷纷着手,在应用服务器产品之上,推出解决以上问题的产品。遗憾的是许多厂家推出的这方面产品,并没有走J2EE标准化的道路。从这一点上来讲,SilverStream公司推出的eXtendTM平台对客户似乎具有更大的吸引力,更能保护企业过去和现有的各种投资。
SilverStream eXtend平台是SilverStream产品在新的Web服务技术驱动下新型架构的组成,它不但提供了基于J2EE标准的运行环境和快速开发、部署工具外,而且还提供了基于xml标准的集成服务器和建立企业应用的标准平台及一些中间件产品。
SilverStream eXtend 平台的开放性还表现在对Web Service标准的支持,据Gartner Group预测:"在2000年,10%的业务系统采用基于面向服务的框架结构(Services-Oriented Architecture)而设计,而到2005年,至少60%的新业务应用系统将采用SOA体系架构设计。"随着Web服务技术的逐渐成熟和MicroSoft Visual Studio.Net平台的发布,越来越多的业务应用将支持Web Services技术,在eXtend平台中,系统完全支持Web Services技术,并可以对整个应用系统进行Web Services封装,使得任何系统、任何平台都可以通过Web Services技术进行服务级的交互。
图2. SilverStream eXtend TM平台技术框架
在SilverStream eXtend TM平台的技术框架中,主要包括:
提供安全、可靠、稳定、满足业界J2EE和Web Service标准的应用运行环境,完全符合J2EE1.2 & J2EE1.3与Web Services标准,并通过了Sun J2EE1.3 的认证。它具有高性能的CORBA ORB和JMS支持技术;支持应用的集群机制,具有远程部署功能;具有Server级和session级的故障恢复机制等。
Composer是一种万能的企业数据连接器。它解决了新系统与企业原有的各种系统之间的连接问题。提供多种企业数据的连接方式以及对遗留信息系统的改造方式,包括各种异构的数据库系统、EDI、SAP、CICS、Tuxido、MQseries、JMS、Telnet、Lotus、通过3270,5250终端访问的主机系统等,使企业可以在不中断原有业务工作的情况下,实现对旧有系统的Web改造。
Composer通过对企业原有系统的交换信息进行XML转换后向新系统传递,同时又将新系统发来的XML信息转换为企业原有系统的信息格式,进而实现新系统与原有系统的对话,并通过封装实现XML、J2EE、Web Service升级改造。可将封装后的应用部署到多种主流的J2EE应用服务器,包括SilverStream eXtend Application Server、IBM WebSphere、BEA Weblogic。
Director是J2EE应用服务器上的企业级应用解决方案。完全符合J2EE的特性,更像是J2EE的无限延伸,有效保护企业的投资,确保应用的灵活性、标准性和快速上线性。
1.具有灵活的用户个性化技术,开发高度定制的Web应用;
2.支持各种设备的访问方式;
3.独立、可扩展的子系统,可用于工作流、内容管理、个性化及业务规则,能灵活提高业务目标及增加客户满意度;
4.具有松散灵活的可插拔结构体系,可以自由选择模块化服务;
5.可将应用部署到多种主流的J2EE应用服务器,包括SilverStream eXtend Application Server、IBM WebSphere、BEA Weblogic。
Workbench是一种综合开发环境,用以简化和加速J2EE和Web Services应用软件的开发和部署
1.易于使用的J2EE环境,支持主流的J2EE应用服务器;
2.J2EE和Web Services应用程序的快速开发和部署;
3.使用灵活的XML、JSP和Java编辑器;
4.标准的UDDI浏览器,方便发布及查找Web Services
5.具有与eXtend TM Director、eXtend TM Composer集成的能力,非常方便的开发和部署2个产品的应用;
包括多种简单、灵活而使用方便的中间件产品:
1.jBroker Web - 高效的Web Services开发及运行引擎;
2.jBroker ORB - 高效的、支持业界标准的CORBA服务器;
3.jBroker MQ - 高效的、支持JMS技术标准的消息服务器
4.jBroker TM - 高效而安全的事务管理器
从以上对SilverStream eXtend平台的介绍中,可以看到eXtend平台既解决了构建新系统之时与原有系统的连接性问题,又解决了新系统的灵活性、快速上线性、科学性等问题。同时,又不失系统的开放性和标准性,最大程度地保护了企业的各种投资。我们确信,各个厂商在J2EE应用服务器上的延伸和扩展一定会最终回到标准性的道路上。
J2EE应用程序的开发与发布
目前,各大厂商基本上都提供J2EE的开发环境和部署工具。但从简单性和开放性的角度来说,SilverStream eXtend Workbench似乎更占优势。
SilverStream eXtend Workbench是SilverStream公司在2000年发布的。用于开发J2EE和Web Service应用、并可以部署到多种J2EE应用服务器之上,如SilverStream eXtend Application Server、IBM Websphere Application Server、 BEA Weblogic Server、Jakarta Tomcat 、Oracle9i Application Server 、Sun J2EE Reference Implementation Server 等。
eXtend Workbench作为一个面向服务的集成开发环境,能够加速并简化对合乎标准的应用程序的开发部署。在Workbench中,每个项目都要以压缩包的形式组织,如可以为应用程序建立面向EAR、WARs 、EJB JARs等的项目。一个项目中可能还包括多个子项目,如一个EAR项目可能包括多个WAR项目和多个JAR项目。
下面以部署到SilverStream eXtend Application Server为例,说明eXtend Workbench用于部署J2EE应用的简单性。
1) 定义一个服务器描述文件
服务器描述文件用来存储应用服务器的信息,即部署到哪种应用服务器及此应用服务器的相关信息。从Server type下拉框中可以选择多种应用服务器进行部署。
图3. 新建服务器描述文件
2) 为服务器建立一个部署计划
部署计划用来指定部署描述符中的设置。
图4. 建立部署计划
选择将要部署的项目及选取的服务器的版本,点击OK之后系统自动将部署计划显示在窗口中。
3) 指定必要的部署设置信息
图5. 设置部署信息
在出现的部署信息对话框中,选择在1)中定义的服务器描述文件名。可以看到该描述文件的信息。
4) 部署应用程序压缩包
只要点击上图中的Deploy按钮便可以完成项目的部署。
(出处:http://www.cncms.com)
更多精彩
赞助商链接