怎样在同一系统中启动多个 TOMCAT

4 篇文章 0 订阅

<Server port="8005" shutdown="SHUTDOWN">

接受服务器关闭指令的端口号,我们叫关闭指令端口.

<Connector port="8080" protocol="HTTP/1.1"

              connectionTimeout="20000"

              redirectPort="8443" />

http请求处理端口,我们在网页上输入的普通url地址包含的端口就是他 .这个端口叫http端口.

 <Connector port="8080" protocol="HTTP/1.1"

              connectionTimeout="20000"

               redirectPort="8443" />

https请求的处理端口.这个端口叫https端口.

 

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

接收AJP协议的处理端口.这个端口叫ajp端口.

 <Connector  port="8009" protocol="AJP/1.3" redirectPort="8443" />

https请求的处理端口.

实际上就4个端口 。

下面我以一个系统里启动3个tomcat为例,说明下操作步骤

分配端口

Tomcat1端口分配表(tomcat1全部采用默认配置)

端口

端口号

关闭指令端口

8005

http端口

8080

https端口

8443

Ajp端口

8009

Tomcat2端口分配表

端口

端口号

关闭指令端口

8006

http端口

8081

https端口

8444

Ajp端口

8010

Tomcat3端口分配表

端口

端口号

关闭指令端口

8007

http端口

8082

https端口

8445

Ajp端口

8011



一、 在 WINDOWS 中启动多个 TOMCAT(以三个为例)。
方法一
1、 使用压缩版的 TOMCAT,把他分别解压到不同的目录中,如:
D:\user1\tomcat5.5
D:\user2\tomcat5.5
D:\user3\tomcat5.5

2、修改各目录中 tomcat5.5\conf 下的 server.xml
修改<Server port="8005" shutdown="SHUTDOWN">中 8005 为其他端口
修改<Connector port="8080" maxHttpHeaderSize="8192"中 8080 为其他端口
修改<Connector port="8009"中 8009 为其他端口

如我把 d:\user1\tomcat5.5\conf\server.xml中以上的三个 port 分别 8001、8010、
8011;把 d:\user2\tomcat5.5\conf\server.xml 中的三个 port 分别设为 8002、8020、
8012;把 d:\user3\tomcat5.5\conf\server.xml 中的三个 port 分别设为 8003、8030、
8013。
3、 直接运行各目录中 tomcat5.5\bin\startup.bat
此种方法设置简单,缺点是会在桌面打开很多窗口,且一不小心就会把窗口关闭,
造成 TOMCAT 服务停止。为了解决这种不足可以把三个 TOMCAT 设为系统服务。

4、 编写并执行 InstallServiceu.bat 批处理文件。文件内容如下:
rem 安装 tomcatuser1 服务
set CATALINA_BASE=d:\user1\tomcat5.5
set CATALINA_HOME=d:\user1\tomcat5.5
call d:\user1\tomcat5.5\bin\service.bat install tomcatuser1

rem 安装 tomcatuser2 服务
set CATALINA_BASE=d:\user2\tomcat5.5
set CATALINA_HOME=d:\user2\tomcat5.5
call d:\user2\tomcat5.5\bin\service.bat install tomcatuser2

rem 安装 tomcatuser3 服务
set CATALINA_BASE=d:\user3\tomcat5.5
set CATALINA_HOME=d:\user3\tomcat5.5





call d:\user3\tomcat5.5\bin\service.bat install tomcatuser3
执行以上批处理,系统增加了一个三个系统服务,如果你的系统中已安装了一个
tomcat 的 windows 安装版,系统中将还有一个 apache tomcat 的服务。如图:





5、到此,可以使用两种方式来启动 TOMCAT,一是前面说的直接运行各目录中
tomcat5.5\bin\startup.bat。二是在 WINDOWS 的服务管理中启动这几个服务,或把服
务设为自动,让他随 WINDOWS 启动而自动启动。
6、虽然我们可以通过以上的方式运行 TOMCAT 服务,但我们不能直接运行
tomcat5.exe 和 tomcat5w.exe。原因是这两个程序只查找一个 tomcat5 的服务(显示为:
Apache Tomcat),按这个服务中的设置去运行。

方法二(此方法本来不想在这里说的,但网上介绍的比较多,但我认为有了方法一,就
不需要方式二,因为设置比较复杂,目前我还没发现这样设置比上面的方法有
其他优点,但在 LINUX 中的单用户模式下,还必须这样设置)。
1、 使用压缩版的 TOMCAT,把他分别解压到不同的目录中,如:
D:\user1\tomcat5.5
D:\user2\tomcat5.5
D:\user3\tomcat5.5
2、设置 WINDOWS 的环境变量:
CATALINA_BASE1=D:\USER1\tomcat5.5.25
CATALINA_HOME1=D:\USER1\tomcat5.5.25
CATALINA_BASE2=D:\USER2\tomcat5.5.25
CATALINA_HOME2=D:\USER2\tomcat5.5.25
CATALINA_BASE2=D:\USER3\tomcat5.5.25
CATALINA_HOME2=D:\USER3\tomcat5.5.25
PATH= D:\USER1\tomcat5.5.25\bin; D:\USER1\tomcat5.5.25\bin;
D:\USER1\tomcat5.5.25\bin;$PATH
3、修改三个 TOMCAT 目录中 catalina.bat 和 startup.bat 文件
把其中的内容 CATALINA_BASE 分别改为:CATALINA_BASE1、CATALINA_BASE2、
CATALINA_BASE3,CATALINA_HOME 分别改为 CATALINA_HOME1、CATALINA_HOME3、
CATALINA_HOME3。
如我把 D:\user1\tomcat5.5\bin\目录下的 catalina.bat 和 startup.bat 中的
CATALINA_BASE 改为 CATALINA_BASE1,CATALINA_HOME 改为 CATALINA_HOME1;
把 D:\user2\tomcat5.5\bin\目录下的 catalina.bat 和 startup.bat 中的
CATALINA_BASE 改为 CATALINA_BASE2,CATALINA_HOME 改为 CATALINA_HOME2;
把 D:\user3\tomcat5.5\bin\目录下的 catalina.bat 和 startup.bat 中的
CATALINA_BASE 改为 CATALINA_BASE3,CATALINA_HOME 改为 CATALINA_HOME3;
4、现在直接运行 startup.bat。




1、 在 LINUX 中启动多个 TOMCAT。(同样以三个为例)
方法一(单用户方式)





在 LINUX 中单用户模式下启动多个 TOMCAT,和在 WINDOWS 中启多个 TOMCAT 的第二种方
法类似。大家可以试试。我重点介绍方法二。
方法二(多用户方式)
最后介绍一种我原创的在 LINUX 中启动多个 TOMCAT 的方法,此方法是我借鉴以上
几种方法总结出来的。
1、建立 LINUX 用户和组
Groupadd tomcat
Useradd user1 -g tomcat
Useradd user2 -g tomcat
Useradd user3 -g tomcat

2、解压 tar 包的 TOMCAT 到用户主目录中,目录名统一定为 TOMCAT5.5。目录结构
如下:
/home/user1/tomcat5.5/
/home/user2/tomcat5.5/
/home/user3/tomcat5.5/

3、修改每个用户的配置文件(用户目录下的“.bash_profile“)加入以下内容。
export CATALINA_BASE=/home/“username”/tomcat5.5
export CATALINA_HOME=/home/“username”/tomcat5.5
export PATH=.:$CATALINA_HOME/bin:$PATH

注:把“username”替换成“user1”“user2”“user3”

4、修改各 TOMCAT 中的“server.xml”文件。
修改<Server port="8005" shutdown="SHUTDOWN">中 8005 为其他端口
修改<Connector port="8040" maxHttpHeaderSize="8192"中 8080 为其他端口
修改<Connector port="8009"中 8009 为其他端口
如我把 d:\user1\tomcat5.5\conf\server.xml中以上的三个 port 分别 8001、8010、
8011;把 d:\user2\tomcat5.5\conf\server.xml 中的三个 port 分别设为 8002、8020、
8012;把 d:\user3\tomcat5.5\conf\server.xml 中的三个 port 分别设为 8003、8030、
8013。
5、为了方便启动 TOMCAT,在/usr/local/bin 目录下建立两个 shell 脚本文件,tup
和 tdown。


tup 用来启动 TOMCAT
#!/bin/sh
cd ~
cd tomcat5.5.25/bin
sh startup.sh

tdown 用来关闭 TOMCAT。
#!/bin/sh
cd ~
cd tomcat5.5.25/bin
sh shutdown.sh


这样 user1-3 不管在什么目录下,都可以使用以上两个命令来启动、关闭 TOMCAT。
他们每个人都可以启动关闭自己的 TOMCAT,但不能关闭其他用户的 TOMCAT,这样也十
分安全。
总结:WINDOWS 下方式一简单方便实用。LINUX 下方法二,简单方便安全,此方法是
我最喜欢的方法,也是我认为最好、最安全的方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果需要管理多个Tomcat实例,可以按照以下步骤进行: 1.在不同的端口上启动多个Tomcat实例。可以使用不同的端口号和不同的Tomcat实例目录(CATALINA_BASE)来启动多个Tomcat实例。例如,可以在8080端口上启动一个Tomcat实例,然后在8081端口上启动另一个Tomcat实例。要启动多个Tomcat实例,请按照以下步骤操作: - 复制Tomcat目录并重命名为不同的名称,例如tomcat1和tomcat2。 - 在每个Tomcat实例目录,创建一个bin/setenv.sh文件,并将JAVA_HOME和CATALINA_HOME设置为正确的路径。例如,假设Tomcat目录位于/opt/tomcat1和/opt/tomcat2,可以按照以下方式设置: ``` export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export CATALINA_HOME=/opt/tomcat1 ``` - 在每个Tomcat实例目录,创建一个conf/server.xml文件,并将端口号设置为不同的值。例如,可以按照以下方式设置: ``` <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> ``` 2.使用Tomcat管理器管理多个Tomcat实例。Tomcat管理器是一个Web应用程序,可以用来管理Tomcat实例。要使用Tomcat管理器,请按照以下步骤操作: - 在每个Tomcat实例,将Tomcat管理器应用程序复制到webapps目录。例如,可以将Tomcat管理器应用程序复制到/opt/tomcat1/webapps和/opt/tomcat2/webapps目录。 - 在每个Tomcat实例的conf/tomcat-users.xml文件,添加一个管理用户,并授予管理角色。例如,可以按照以下方式设置: ``` <user username="admin" password="password" roles="manager-gui,admin-gui"/> ``` - 启动每个Tomcat实例,并访问Tomcat管理器应用程序。例如,可以在浏览器访问http://localhost:8080/manager/html和http://localhost:8081/manager/html来管理两个Tomcat实例。 3.使用Apache HTTP Server作为反向代理。如果需要同时管理多个Tomcat实例,并且需要在同一端口上提供服务,可以使用Apache HTTP Server作为反向代理。要使用Apache HTTP Server作为反向代理,请按照以下步骤操作: - 在Apache HTTP Server启用代理模块。例如,可以使用以下命令启用代理模块: ``` sudo a2enmod proxy sudo a2enmod proxy_http ``` - 在Apache HTTP Server的配置文件,添加一个代理规则,将请求转发到Tomcat实例。例如,可以按照以下方式设置: ``` ProxyPass /tomcat1 http://localhost:8080/ ProxyPassReverse /tomcat1 http://localhost:8080/ ProxyPass /tomcat2 http://localhost:8081/ ProxyPassReverse /tomcat2 http://localhost:8081/ ``` - 启动Apache HTTP Server,并在浏览器访问http://localhost/tomcat1和http://localhost/tomcat2来访问两个Tomcat实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值