部署应用程序而不取消部署上一个应用程序,而不会停机? [英] Deploying an application without undeploying previous one and with no downtime?

查看:154
本文介绍了部署应用程序而不取消部署上一个应用程序,而不会停机?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用Glassfish Java,JSP在MySQL上用于我的Web应用程序。许多在线人员使用此Web应用程序,该网站不应该关闭。



当我要部署新的war文件时,我应该在服务器上取消部署并部署我的应用程序。



我的问题是:



有没有什么技术不需要取消部署我的应用程序,只需更改相应的类不需要再次重新合并?

解决方案

有些技术可以让您替换类在飞行中(如JRebel)。但是,由于您已经使用Glassfish,您应该开始使用Glassfish中内置的集群。您将需要2.1或3.1,因为3.0不支持聚类。使用Glassfish集群,您可以在集群节点之间分配负载(负载平衡器(Apache,Sun Web Server,硬件(Big IP,Coyote)等)。当您要升级应用程序时,您可以在技术上一次做一个节点。设置集群不是世界上最简单的事情,但它是可行的,它会给你一些很大的好处。您可以通过添加新的硬件,甚至使用Amazon(或任何一个)云服务来扩展负载。即使在其中一个节点上硬件出现故障,您也可以保持网站的运行。



我个人正在将Glassfish 2.1转换为3.1 。到目前为止,我喜欢Glassfish 3.1集群的管理好多了,但是我对于生产中的运行情况无法保证,尽管我有很高的期望。



http://download.oracle.com/docs /cd/E18930_01/html/821-2432/gktqx.html#gktob


I use Glassfish Java, and JSP over MySQL for my web applications. Many online people uses this web application and that web-site should not be down.

When I want to deploy a new war file, I should undeploy and deploy the new one for my application at server.

My question is that;

Is there any technology that doesn't need to undeploy my application and just change the appropriate classes so no need to redoploy it again?

解决方案

There are java technologies that would allow you to replace classes on the fly (like JRebel). But since you're using Glassfish already, you should just start using clustering which is built into glassfish. You'll need either 2.1 or 3.1, as 3.0 does not support clustering. With a Glassfish cluster, you have a load balancer (Apache, Sun Web Server, hardware (Big IP, Coyote), etc) distribute the load among your cluster nodes. When you want to upgrade the app, you can technically do it one node at a time. Setting up the cluster is not the easiest thing in the world, but it is doable and it would get you some great benefits. You'll be able to scale the load by adding new hardware and even using Amazon (or whoever) cloud services. You'll be able to keep your site running even if the hardware fails on one of the nodes.

Personally I'm in the middle of converting from Glassfish 2.1 to 3.1. So far I like the management of the Glassfish 3.1 cluster much better, but I can't personally vouch for how it will run in production, though I have high expectations.

http://download.oracle.com/docs/cd/E18930_01/html/821-2432/gktqx.html#gktob

这篇关于部署应用程序而不取消部署上一个应用程序,而不会停机?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆