我们应该为每个tomcat群集运行一个或者多个应用程序吗?
时间:2020-03-05 18:43:53 来源:igfitidea点击:
当前,我正在设置一个可以将其他Web应用程序部署到Tomcat 6群集的应用程序。现在已将其设置为在已部署的Web应用程序和集群之间具有一对一的关系。我目前这样做的原因是,我可以在不中断其他应用程序的情况下更改Tomcat服务器的JVM参数,并且使单个应用程序的内存使用不会与其他应用程序冲突。
问题是,就tomcat实例群集而言,什么被认为是最佳实践?我们应该每个集群只运行一个应用程序,还是像在单个tomcat实例环境中那样运行多个应用程序?还是这取决于应用程序的大小?
谢谢
解决方案
回答
至少按资源需求划分服务。例如,如果我们正在运行相册网站,则将图像下载服务器与图像上传服务器分开。下载服务器将有更多请求,并且由于大多数人的上传速度较低,因此上传服务器将具有更长的持续连接。同样,图像处理服务器可能几乎没有连接,但是它应该分叉线程以从Web用户界面异步执行CPU密集型图像处理任务。
如果我们有执行此任务的硬件,那么管理每个具有一个应用程序的多个单独的tomcat实例要比具有多个应用程序的几个实例要容易得多。
回答
我从经验中了解到,每个Tomcat实例仅具有一个应用程序具有一个非常重要的优势:当Tomcat实例死亡时,我们不必挖掘日志(或者猜测)是哪个应用程序引起的。