目前我正在设置一个可以将其他Web应用程序部署到Tomcat 6集群的应用程序。它现在设置为在已部署的Web应用程序和群集之间具有一对一的关系。我目前的理由是,我可以在不中断其他应用程序的情况下更改Tomcat服务器的JVM args,以便单个应用程序的内存使用量不会与其他应用程序冲突。
问题是,就tomcat实例集群而言,什么是最佳实践?您是否应该只为每个群集运行一个应用程序,或者在单个tomcat实例环境中运行多个应用程序?或者这取决于您的应用程序的大小?
谢谢
答案 0 :(得分:3)
我从经验中了解到,每个Tomcat实例只有一个应用程序具有非常显着的优势:当Tomcat实例死亡时,你不必挖掘日志(或猜测)应该责怪哪个应用程序
答案 1 :(得分:2)
至少按资源要求划分您的服务。例如,如果您正在运行相册网站,请将图像下载服务器与图像上载服务器分开。下载服务器将有更多的请求,并且由于大多数人的上传速度较低,因此上传服务器将具有更长的持续连接。类似地,图像处理服务器可能只有很少的连接,但它应该分叉线程以从Web用户界面异步执行CPU密集型图像处理任务。
如果您有硬件可以做到这一点,那么使用一个应用程序管理许多单独的tomcat实例要比使用多个应用程序的几个实例容易得多。