热部署Java EAR以最小化或消除服务器上应用程序的停机时间?
我听说这是
JavaRebel所做的,但有没有其他好的方法来部署新版本的EAR,同时允许用户在以前的版本上保持活动状态?我们将JBoss用于应用服务器……
解决方法
这不是JavaRebel所做的. JavaRebel(根据描述)热替换内存中的类.在与系统的现有连接的情况下,这是不可接受的,因为更新的类可能会破坏客户端的逻辑.
一旦我工作的公司有类似的问题,它就这样解决了: >智能路由器被用作负载均衡器 现在,我不是一个网络人,也不能给你很多细节(比如什么是路由器硬件等).我的理解可以很简单,但是,如果我没记错的话,我们必须设置一个额外的Weblogic域来部署应用程序的新版本(否则它将与JNDI名称上的旧版本冲突). 希望有所帮助. 附: Ichorus提供了一条评论说该应用程序部署在客户端的服务器上.所以路由器技巧可能不可行.现在,我现在只看到一个可行的解决方案(现在是21:52,我可能忽视了一些事情:)) – >使用“版本化”JNDI名称开发新版本;例如如果Customer bean在版本1中的ejb / Customer下,则在版本2中,它将在ejb / Customer2下 这种方法需要仔细规划和测试,但应该工作恕我直言. 我最近以类似的方式修改了一些应用程序,让它们在同一个域中共存(在它们为不同的数据源使用相同的JNDI名称之前). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |