[发明专利]一种集群应用服务器的分布式热部署方法有效
申请号: | 200710156703.3 | 申请日: | 2007-12-04 |
公开(公告)号: | CN101183975A | 公开(公告)日: | 2008-05-21 |
发明(设计)人: | 尹建伟;李武;李莹;吴健;邓水光;吴朝晖 | 申请(专利权)人: | 浙江大学 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;G06F15/177 |
代理公司: | 杭州九洲专利事务所有限公司 | 代理人: | 陈继亮 |
地址: | 310027浙江省杭州市西湖区浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 集群 应用 服务器 分布式 部署 方法 | ||
技术领域
本发明涉及通过借助一种底层通信平台来实现集群应用服务器环境下EJB的分布式热部署,主要是一种集群应用服务器的分布式热部署方法。
背景技术
术语“应用服务器”是指位于应用软件及操作系统、数据库之间满足一定标准的一系列软件环境、服务及工具的集合。集群应用服务器是指各个独立的应用服务器,通过一种底层通信平台相互连接,然而对外表现为单一的系统。比如,当我们在浏览网页的时候,在地址拦里输入域名,浏览器就会向对应的服务器发送请求,在集群应用服务器情况下,该请求可能被集群中的任何一台应用服务器处理,并返回信息。然而对于我们而言,只感觉到在跟一台服务器进行交互。
EJB是Java中用于开发企业级应用的技术标准,他定义了一个用于开发和发布可重用的服务器端组件的模型。EJB的部署是指将该EJB绑定到应用服务器,从而在接收客户端请求时,可以调用该EJB来处理请求,并返回结果。EJB的分布式热部署是指,当一个EJB在集群应用服务器中的任意一个节点上部署时,该EJB同时被部署到集群中的其他应用服务器上。
本项技术主要提出一种集群应用服务器下EJB分布式热部署的方法。
在集群应用服务器下,如果部署一个EJB需要把EJB手动部署到每一台服务器上的话,不但过程繁琐,而且容易出错,可能由于疏忽,某台应用服务器并没有部署或卸载相应的EJB,从而造成集群应用服务器的不一致现象。
分布式热部署就是为了解决这一情况而设计。当一个新节点加入集群时,它会去下载集群中其他节点上已经部署的EJB,并在本地部署。当一个EJB在集群中的一个节点上部署时,其他节点会自动下载该EJB,然后在本地部署;同样,当一个EJB在一个节点上被卸载时,其他节点也会自动卸载该文件。
发明内容
本发明要解决上述技术所存在的缺陷,提供一种集群应用服务器的分布式热部署方法。
本发明解决其技术问题所采用的技术方案:
这种集群应用服务器的分布式热部署方法,当一个新的应用服务器节点加入到集群中时,它会自动去获取集群中每个节点特定目录下的所有EJB文件,然后在本地部署。当在本地部署一个EJB时,先将该EJB在本地部署,再在集群中广播,通知集群中的其他节点下载该文件。具体过程如下:
当有一个新的应用服务器节点加入集群时:
1.该节点首先通过底层通信平台获得集群中其他节点上的所有文件的文件名和文件版本信息,将其存放到一张表中。
2.逐个取出表中的文件信息,和本地已部署文件信息表进行对照,如果在本地已部署文件信息表中没有找到该文件,或是能够找到,但是文件的版本信息比该文件的版本信息要早,则将集群中其他节点上该文件的信息(文件内容和版本信息)获取过来,存放到一张临时表中。
3.逐个取出临时表中的文件信息,再次查找本地的已部署文件信息表,如果不能找到,或是能够找到,但是其文件版本信息比该文件的版本信息要早,则将该文件下载到本地,再进行部署,并将文件名添加到远程已部署文件信息表中;否则,不做任何操作。
当有一个新的EJB在某个应用服务器上部署时:
1.该节点首先对新EJB在本地进行部署。
2.在部署完新EJB后,将该文件名和文件版本信息添加到本地的已部署文件信息表中。接着,在远程已部署文件信息表中查找该文件,如果能够找到该文件,说明该文件已经在其他节点上部署,则不用再在集群中广播;否则,通过底层通信平台通知集群中的其他节点下载该文件。
3.其他节点收到消息后,首先在本地的已部署文件信息表中查找该文件,如果不能找到,或是能够找到,但是其文件版本信息比接收到的文件版本信息要早,则将该文件下载到本地,再进行部署,并将文件名添加到远程已部署文件信息表中;否则,不做任何操作。
当有一个EJB在某个应用服务器上被卸载时:
1.该节点首先将该EJB在本地进行卸载。
2.在卸载完该EJB后,将本地的已部署文件信息表中的该文件信息删除。接着,在远程已卸载文件信息表中查找该文件,如果没有找到,说明集群中其他节点上还没有卸载该文件,再通过底层通信平台通知集群中的其他节点卸载该文件。
3.其他节点收到消息后,首先判断该文件是否存在,如果不存在,则直接返回,不做任何操作。否则,将该文件名添加到远程已卸载文件信息表中,并将该文件删除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710156703.3/2.html,转载请声明来源钻瓜专利网。