同一java应用程序服务器中应用程序的不同版本
我们正在使用 Citrix Netscalar 和 20 多个 glassfish java 应用程序服务器。不幸的是,我们必须在部署新版本之前删除以前的应用程序,因为这两个不同的应用程序具有相同的上下文。由于构建过程中缺乏关注或其他问题,这个容易出错的过程会导致一些问题。在紧急情况下,我们只想将所有流量重定向到以前的应用程序。
同时在大量服务器上运行不同版本的应用程序的最佳实践是什么?
编辑:我想到的另一个简洁且流行的例子是 Google 应用程序引擎。在 GAE 中,您可以根据需要部署不同的版本。然而,流量可以在运行时平滑地重定向到不同的应用程序。
谢谢
We are utilizing citrix netscalar with more than 20 glassfish java application servers. Unfortunately we have to remove previous application before deploying a new version of it since we have same context for these two different application. This error-prone process leads some problems due to lack of attention in builds or other problems. In an urgent case, we simply want to redirect to all traffic to previous application.
What is the best practice to run different version of an application in a substantial number of servers in same time?
Edit: Another concise and prevailing example which came to my mind is Google Application Engine. In GAE you can deploy different versions as much you want. However traffic can be redirected to smoothly different application at runtime.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
目前最好的解决方案是使用虚拟机。您使用该应用程序创建一个映像,然后在虚拟机中运行它。 VM 的行为就像独立的机器一样。
The best solution these days is to use Virtual Machines. You create an image with the app and just run it in a VM. The VMs act just like independent machines.
不同的 URL 或端口号是一种方法。您可以同时使用两者。
就部署而言,应该有一种方法来编写脚本,以便将单个版本同时推送到所有服务器。
Different URLs or port numbers would be one way. You'd have both available at the same time.
As far as deployment goes, there ought to be a way to script this so a single version is pushed out to all the servers simultaneously.