Linux同时运行多个Tomcat

背景:起初是这样的:在一个tomact里放了好多个web项目,启动过,过一段时间,发现不能正常访问,现象就是感觉tomcat已经关闭了。查看日志发现:tomcat报错了<java.lang.OutOfMemoryError:PermGen space>,这才知道内存溢出了。FK!!!原来的放的项目太多了,这样就需要配置多个tomcat。

每个tomcat都有自己的端口和监听的端口,那么要多个运行,就必须使用不同的端口,具体怎么操作呢,看下面:

1)需要JDK作为支撑,这里就不做处理了,我这里的目录:/usr/local/jdk7

2)首先下载对应的linux下的tomcat版本,存放于2个目录,这里以/usr/local/tomcat01和/usr/local/tomcat02为例,多个以此类推。这里tomcat01为了统一,就也把默认配置改掉了。

3)首先,将tomcat02的根目录配置到/etc/profile中,如下:

export JAVA_HOME=/usr/local/jdk7
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

CATALINA_BASE=/usr/local/tomcat01
CATALINA_HOME=/usr/local/tomcat01
export CATALINA_BASE CATALINA_HOME

CATALINA_2_BASE=/usr/local/tomcat02
CATALINA_2_HOME=/usr/local/tomcat02
export CATALINA_2_BASE CATALINA_2_HOME

TOMCAT_HOME=/usr/local/tomcat01
export TOMCAT_HOME
TOMCAT_2_HOME=/usr/local/tomcat02
export TOMCAT_2_HOME

配置完成后,执行source /etc/profile 使之生效。

4)修改对应tomcat下conf目录下的server.xml文件,指定其对应端口号。

tomcat01的,修改如下:第一个地方:修改关闭监听端口,默认8005,修改为8051,当然你可以改成其他任意没有用过的端口号。

<Server port="8051" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
第二个地方:修改http监听端口,默认8080,这里改成8081,我这里加了下其他配置。
<Connector
         port="8081" protocol="org.apache.coyote.http11.Http11NioProtocol"
         URIEncoding="UTF-8"
         minSpareThreads="1000"
         maxSpareThreads="4000"
         enableLookups="false"
         disableUploadTimeout="true"
         connectionTimeout="20000"
         acceptCount="4000"
         maxThreads="5000"
         maxProcessors="5000"
         minProcessors="100"
         useURIValidationHack="false"
         compression="on"
         compressionMinSize="2048"
        compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
         redirectPort="8443" />
第三个地方:修改 AJP 的对应端口,默认8009,修改为9080:

<Connector port="9080" protocol="AJP/1.3" redirectPort="8443" />
好了,这样就把第一个的server.xml配置修改完成了。第二个tomca02的配置类似,3个端口我设置的是:8052,8083,9081

5)修改tomcat/bin下的启动脚本,其实就是添加几行代码,如在tomcat01的startup.sh和shutdown.sh文件中添加如下代码:

# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------

export JAVA_HOME=/usr/local/jdk7
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/lib
export CATALINA_HOME=$CATALINA_HOME
export CATALINA_BASE=$CATALINA_BASE

# Better OS/400 detection: see Bugzilla 31132
[注:]上下被#注释掉的地方,是为了方便大家找到添加的位置,是原来文件中的内容,我们这里添加的是export开头的代码。

那么对应的tomcat02配置如下;

export JAVA_HOME=/usr/local/jdk7
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/lib
export CATALINA_HOME=$CATALINA_2_HOME
export CATALINA_BASE=$CATALINA_2_BASE
哦了,这样就完成了linux中多个tomcat的配置。下面就可以在每个tomcat/bin目录下分别执行./startup.sh了。最后在浏览器中分别输入http://localhost:8081和http://localhost:8083就可以看到,已经配置成功了。

###如果您觉得帮到您,请顶一下。谢谢呢!###





  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,针对你的问题,我将为你提供一个简单的步骤来在 Linux 上同时部署多个 Tomcat 的方法。 1. 下载 Tomcat 首先,你需要在你的 Linux 服务器上下载 Tomcat。你可以从 Apache Tomcat 的官方网站上下载最新版本的 Tomcat。 2. 解压 Tomcat 使用以下命令解压下载的 Tomcat 压缩包: ``` tar -xvf apache-tomcat-9.0.34.tar.gz ``` 这将在当前目录下创建一个名为 apache-tomcat-9.0.34 的文件夹,其中包含 Tomcat 的所有文件。 3. 复制 Tomcat 文件夹 复制 Tomcat 文件夹以创建多个 Tomcat 实例。例如,如果你想要创建两个 Tomcat 实例,可以使用以下命令: ``` cp -r apache-tomcat-9.0.34 tomcat1 cp -r apache-tomcat-9.0.34 tomcat2 ``` 这将在当前目录下创建两个名为 tomcat1 和 tomcat2 的文件夹,这两个文件夹都包含 Tomcat 的所有文件。 4. 配置 Tomcat 在每个 Tomcat 实例文件夹中,你需要配置 Tomcat。你需要编辑以下文件: - conf/server.xml:在此文件中配置 Tomcat 的端口号、访问日志等。 - bin/setenv.sh:在此文件中配置 Tomcat 的环境变量,例如 JAVA_HOME、CATALINA_HOME 等。 你可以使用以下命令打开文件进行编辑: ``` vim tomcat1/conf/server.xml vim tomcat1/bin/setenv.sh vim tomcat2/conf/server.xml vim tomcat2/bin/setenv.sh ``` 5. 启动 Tomcat 一旦你完成了配置,你可以使用以下命令启动 Tomcat: ``` ./catalina.sh run ``` 你需要在每个 Tomcat 实例文件夹中运行此命令。例如,对于 tomcat1,你可以使用以下命令: ``` cd tomcat1/bin/ ./catalina.sh run ``` 对于 tomcat2,你可以使用以下命令: ``` cd tomcat2/bin/ ./catalina.sh run ``` 这将启动两个独立的 Tomcat 实例,你可以通过浏览器访问它们的 URL 来验证它们是否正常运行。 希望这些步骤对你有所帮助。如果你还有其他问题,请随时问我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一掬净土

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值