论文部分内容阅读
在互联网高速发展的背景下,Web应用集群越来越受到重视,而对于目前现有Web应用集群解决方案来说,大多数利用中大型规模的商用Web集群产品来实施。实施此类解决方案,一般需要较高的经费投入,而且后期需要专业人员来维护,市场上缺少一个有针对性的、完整的、易于部署和维护的中小型规模Web应用集群解决方案。本文通过总结现有的基于中小规模的Web应用集群解决方案,以及测试相对应的集群环境,提出了一种适用于中小规模企业的Web应用动态集群策略。本文通过分析和研究Tomcat服务器源代码,深入理解Tomcat体系结构以及各个组件之间的交互关系,提出了一种通过扩展Tomcat组件的设计方案,在深入研究Tomcat会话(Session)的处理流程、调度请求流程以及底层通讯协议的基础上,给出了相对完整的解决方案,概括如下:(1)提出了一种新的集群管理Session对象策略,设计引入了BackupClusterManager管理器和BackupClusterSession对象。详细设计实现了各组件间的处理工作流程,包括Session对象创建、修改、更新最后访问时间等生命周期操作,并给出了相应Tomcat服务器源代码级别上的实现;(2)针对在Tomcat默认的调度请求基础上,提出了动态调度请求策略,增加了动态请求调度功能。设计了与之相对应的请求调度方式,请求调度的处理以及相关Web应用监测处理策略,并给出了相应Tomcat服务器源代码级别上的实现;(3)设计了一套基于TCP单播和UDP广播协议的底层通信模块,包含有接收模块(Receiver)和发送模块(Sender),用于集群之间Session会话的通信传递以及动态调度信息之间的通信传递,并且给出Session会话信息与调度信息的封装策略及实现。本文提出的基于Tomcat服务器扩展的设计和实现方案,基本解决了存在于中小型规模Web应用集群的Session会话集群管理问题、Web应用失效监测与处理问题以及用户请求动态调度问题。