论文部分内容阅读
J2EE规范定义了一套标准来简化N层企业级应用的开发;J2EE服务器提供了交易处理服务、数据存取服务、Java消息服务(JMS)、安全性服务等执行环境和系统服务.J2EE的最大优点是,与操作系统平台无关,这意味着以Java开发的构件,能够做到"Write once,run anywhere".开发的应用可以配置到包括Windows平台在内的任何服务端环境中去.随着Internet/Intranet网络的普及,符合J2EE规范的网络应用服务器需要为越来越多的用户提供服务,在这种情况下,即使单台服务器性能再高,所能提供的服务也是有限的,且存在单点失效等问题,为此应用服务器群集技术和负载均衡技术成了研究如何提高J2EE服务器整体性能的新课题.J2EE服务器群集主要有三个特性:负载均衡(Load Balancing,LB)、高可用性(High Availability,HA)和失败接管(Failover).系统资源的有效利用是群集系统的关键问题,负载平衡是实现资源有效利用的重要手段.当前EJB和Servlet/JSP一起成为新一代应用服务器的技术标准:EJB是业务逻辑层的中间件技术,与JavaBeans不同,它提供了事务处理的能力,从数据存储储层分离,并取代了存储层的大部分地位;Servle/Jsp负责与客户端通信,访问EJB,并把结果通过JSP产生页面传回客户端.因而,群集机制可以提供在Web容器层(传递请求到几个Servlet/JSP引擎实体)、EJB容器实体层(传递处理EJB请求到几个EJB容器实体)和数据库层.EJB容器层的群集是基于组件的,在实现负载均衡等方面有别于一般的web服务器群集技术.该论文在研究总结了J2EE及J2EE群集的主要实现技术后,给出了当前流行的J2EE服务器BEA Weblogic和开源Jboss在实现群集负载均衡的细节,并针对"远程答疑系统"项目实现了基于rule的HTTP/Servlet负载均衡,提出和实现了EJB层的分组△负载均衡算法.最后,给出了所实现算法跟现存算法的比较,提出下一步工作.