在tomcat上构造java web应用程序的正确方法?

在tomcat上构造java web应用程序的正确方法?,tomcat,web-applications,Tomcat,Web Applications,在过去的几年里,我开发了一个使用java作为“爱好项目”的web应用程序。它基本上是一个订单输入和销售订单管理系统的利基行业,我在。我已经为2个客户运行该应用程序一年了,但其他客户表示有兴趣使用该应用程序 应用程序本身运行良好,但我担心在这一点上成长的烦恼。目前,我将两个客户端域指向我的服务器,其中一个tomcat实例运行两个相同的web应用程序,每个应用程序都通过hibernate连接到自己的MySQL数据库 我想把这些客户机和未来的客户机切换到一个域名,每个客户机都有自己独特的子域 我想回答

在过去的几年里,我开发了一个使用java作为“爱好项目”的web应用程序。它基本上是一个订单输入和销售订单管理系统的利基行业,我在。我已经为2个客户运行该应用程序一年了,但其他客户表示有兴趣使用该应用程序

应用程序本身运行良好,但我担心在这一点上成长的烦恼。目前,我将两个客户端域指向我的服务器,其中一个tomcat实例运行两个相同的web应用程序,每个应用程序都通过hibernate连接到自己的MySQL数据库

我想把这些客户机和未来的客户机切换到一个域名,每个客户机都有自己独特的子域

我想回答几个相关的问题:

在每个子域/客户端应用程序上运行一个tomcat实例是一个好主意吗?

我不希望每次需要重新启动tomcat进行应用程序更新时都必须中断每个客户端的服务。此外,如果我在更新时出错,我不希望我的所有客户端同时崩溃。我想这将是资源密集型的,但该应用的订阅费将在每月100-200美元之间,所以到时候我可以负担额外的托管费用

如果我不需要EE功能,是否有理由使用Jboss/Glassfish而不是Tomcat?

Tomcat似乎很容易用一个简单的配置进行配置,但随着我转向更复杂的部署,另一个容器会更好吗

在正确的方向上的任何一点都会有帮助!我不太了解如何设置这样的服务器,因为直到现在我才需要这么做。。。谢谢

  • 理想情况下,您应该使用(冗余)负载平衡器和两个(冗余)服务器,这样您就可以停止/重新启动/重新加载其中一个服务器,并且仍然允许客户端连接。您还可以拥有与生产服务器相同的独立的暂存服务器,以便确保在生产过程中不会发生崩溃

  • 顺便说一句,您可以在tomcat上运行,而无需重新启动它

  • 您可以在它们自己的JVM中运行distinct,以便在一个JVM崩溃时不会影响另一个JVM