同一台机安装多个tomcat

网友投稿 254 2022-09-14

同一台机安装多个tomcat

一台机器可以跑多个tomcat实例。无论是tomcat7、tomcat8一起跑,还是多个tomcat8一起跑,都可以。

为什么会有这种需求?有些是因为不同的应用,需要对应不同的WEB容器,如以前做的程序,用JDK1.7,跑在tomcat7下;现在一般都JDK1.8,跑在tomcat8或以上。多个tomcat8的话,是不想应用之间互相影响,多个应用都挤在一个tomcat下,一损俱损。

一、同时跑多个tomcat实例

很简单,tomcat是免安装的,需要什么版本的tomcat,需要多少个tomcat,就复制粘贴多少个tomcat程序文件夹,然后再将​​/conf/server.xml​​​里的端口改改,避免冲突就可以了。 修改3个端口:

... ...

即修改 8005、8080、8009这3个端口。比如,我放了2个tomcat8,那么第一个不改,就用默认的这3个;然后第二个tomcat的端口,统统改成9开头:

... ...

改了以后,就用 ​​localhost:9080​​ 进行访问。以此类推。

网上有文章发现了真理,说tomcat实际上分为CATALINA_BASE和CATALINA_HOME两部分,只需保留一个BASE,然后多多复制粘贴HOME。我想说的是,这样究竟节省了啥?除了节省硬盘空间外,应用之间互不影响这个初衷是否得到照顾?另外,如果真有这种机制,tomcat应该早就支持了吧,何必要我们另辟蹊径,大费周折搞这么多。所以我就没有深入下去看这些教程:

南山居:​​Tomcat多实例部署​​

​​Tomcat多实例部署​​

二、创建windows服务

本来直接运行​​/bin/startup.bat​​就好,但有两个不好处:要手动运行;不小心会被关掉。创建windows服务最实际。

怎么建?运行​​/bin/service.bat​​

可有两种方式:1、不指定名称,系统创建默认的服务名称

service.bat install

这样创建出来后,tomcat8的服务名称就类似:​​Apache Tomcat 8.5 Tomcat8​​ 这样。可用在单个或第一个tomcat8实例。

2、指定服务名称

service.bat install name tomcat8-2

这样就可以创建第2个tomcat8实例的实例。否则会因为名称重复而失败。

注意不要在操作系统定义环境变量:CATALINA_HOME、CATALINA_BASE。这两个变量没什么用,根本没必要创建,而且会妨碍创建多个tomcat服务。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:打破“克制”的标签,视频号真的如此凶猛吗?
下一篇:REST风格RPC与SOAP RPC的比较
相关文章

 发表评论

暂时没有评论,来抢沙发吧~