linux上如何运行两个tomcat
记录一下在linux上运行第二个tomcat步骤:
一台服务器提供两个端口,有两种方式:
1、一个tomcat,开放两个端口;
2、两个tomcat,各运行一个项目,提供两个端口。
后者性能更好一些。于是,就查询实现linux服务器上同时运行两个或多个tomcat的方式,下面以同时运行两个tomcat为例介绍,具体实现如下:
第一步:搭建JDK环境
首先搭建JDK环境,下载JDK,然后解压,如:tar -zvxf jdk-6u18-ea-bin-b01-linux-i586-20.gz(JDK压缩包)
解压后,配置环境变量。
linux中,环境变量是在 /etc/profile 中修改文件。
如:
vi /etc/profile
进入文件后,按 ‘ i ’ 键,进入编辑状态;
//在最末尾添加,注意,其中的‘:’是冒号,不是分号。
JAVA_HOME=/usr/local/jdk1.8.0_161
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
export JAVA_HOME PATHCLASSPATH TOMCAT_HOME
//添加以上代码后,直接 ctrl + C ,输入:wq (冒号), 回车保存就行了
然后加载刚刚配置的环境变量,命令如下:
source /etc/profile
验证JDK是否安装成功,在命令行,输入java -version
回车,若打印出JDK版本,则OK!
第二步:下载安装tomcat
下载tomcat到服务器中,并解压到文件夹,如/home/emeet/tomcat.
再复制一份tomcat压缩包,解压到 /home/emeet/tomcat2;
这就服务器上就有两个tomcat了,然后我们开始下一步。
第三步:配置tomcat环境变量(重点)
同样是操作/etc/profile 文件。
vi /etc/profile
然后在文件最后一行,即刚刚添加JDK环境变量的后边添加如下配置:
#tomcat1
export CATALINA_HOME=/home/emeet/tomcat/apache-tomcat-9.0.16
export CATALINA_BASE=/home/emeet/tomcat/apache-tomcat-9.0.16
export TOMCAT_HOME=/home/emeet/tomcat/apache-tomcat-9.0.16
#tomcat2
export CATALINA_HOME2=/home/emeet/tomcat2/apache-tomcat-9.0.16
export CATALINA_BASE2=/home/emeet/tomcat2/apache-tomcat-9.0.16
export TOMCAT_HOME2=/home/emeet/tomcat2/apache-tomcat-9.0.16
(注意:tomcat2中的配置命名)
添加后,ctrl+C, 然后命令行输入 :wq ,保存退出。
加载环境变量,命名行
source /etc/profile
配置成功!
第四步:修改tomcat2中的server.xml文件(重点)
修改 tomcat2/apache-tomcat-9.0.16/conf/server.xml 文件。这个地方是更改端口,共三处,如下:
<Server port="8005" shutdown="SHUTDOWN"> 默认为8005--》修改为8006
<!--APR library loader. Documentation at /docs/apr.html -->
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
.........
<Connector port="8080" protocol="HTTP/1.1" 默认为8080--》修改为8081
connectionTimeout="20000"
redirectPort="8443" />
........
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> 默认为8009--》修改为8010
第五步:修改tomcat中的startup.sh 和 shutdown.sh文件(重点)
1.修改 tomcat/apache-tomcat-9.0.16/bin 中的 startup.sh 和 shutdown.sh 两个文件,分别在其中添加如下内容:
//为了方便定位位置,加了上下的注释内容
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------
export JAVA_HOME=/root/jdk1.8.0_161
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/bin
export CATALINA_HOME=$CATALINA_HOME
export CATALINA_BASE=$CATALINA_BASE
2.修改 tomcat2/apache-tomcat-9.0.16/bin 中的 startup.sh 和 shutdown.sh 两个文件,分别在其中添加如下内容
//为了方便定位位置,加了上下的注释内容
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------
export JAVA_HOME=/root/jdk1.8.0_161
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/bin
export CATALINA_HOME=$CATALINA_HOME2
export CATALINA_BASE=$CATALINA_BASE2
# Better OS/400 detection: see Bugzilla 31132
添加完成后,保存退出即可。
此处发现一个错误:在Linux中的启动Tomcat的时候无异常,但是通过脚本文件shutdown关闭Tomcat的时候,出现异常,发现是8005或者8006端口没有正常启动,导致关闭tomcat失败
解决办法:
$JAVA_HOME/jre/lib/security/Java.security 文件中 securerandom.source 配置项
securerandom.source=file:/dev/random
改为:
securerandom.source=file:/dev/urandom
最后:检验成果
分别启动两个tomcat中的 /bin/startup.sh ,然后打开浏览器访问测试。http://ip / 端口(server.xml中配置的端口) ,两个端口都可以成功访问即可。
剩下的就是将项目拷贝一份,分别部署到两个tomcat中,启动运行!
-----来自群员销售的投稿
- 本文标签: Java
- 本文链接: https://blog.xiaomiqiu.com/article/6
- 版权声明: 本文由刺球原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权