我有两个war文件在tomcat中部署在一个linux服务器上。我有两种方法来部署它们,因为只有一个Linux服务器。
在一个tomcat中部署两个war文件
A.内存分配将在两个war文件实例之间共享。
B.部署其中一个war文件,意味着两者都有停机时间。
在两个不同的Tomcat实例中部署两个war文件
A.必须为每个tomcat单独分配内存。这意味着,如果第一个war文件在某些时间占用更多内存而第二个war文件在不同时间占用更多内存,则这两个tomcats的内存分配将不是最佳的。
B.部署其中一个战争文件,不会导致另一个战争文件崩溃。
我希望得到关于我的情景的专家意见。同样在我错过的任何其他方面。
答案 0 :(得分:0)
部署war文件并不一定意味着停机。新版本可以是deployed in parallel。
您还需要考虑如何管理端口。单个tomcat实例可以侦听端口80(或443)。如果你有2个tomcat实例,你现在需要一些其他进程(例如httpd)来侦听单个端口并匹配url以转发到相应的tomcat实例。
内存的另一个考虑因素是tomcat本身只有一些内存利用率。显然这种情况会随着其他情况而增加。
答案 1 :(得分:0)
新版本的tomcat需要非常低的内存(少于20MB的RAM)才能在没有部署任何war文件的情况下运行。 CPU要求也很低,运行基本版本的tomcat。
另一方面:
大多数新版本的tomcat都能够重新部署war文件而无需重新启动它。请参阅tomcat's manager application
如果没有紧迫的原因,最好使用单个tomcat来部署不同的war文件。这使服务器管理变得容易。