本文共 3360 字,大约阅读时间需要 11 分钟。
配置多实例多应用
多实例多应用:多个 Tomcat 部署多个不同的项目。这种模式在服务器资源有限,或者对服务器要求并不是很高的情况下,可以实现多个不同项目部署在同一台服务器上的需求,来实现资源使用的最大化有一种做法就是简单的复制出一个新的 Tomcat 目录后改一下端口,这种方法应用起来也是可以的,但是会有几个问题:
1 当你对集群中Tomcat 版本升级 如何做? 2 当你需要针对每一个不同的 Web 服务分配不用的内存时,你需要怎么做官方建议配置多实例方法
下面是具体操作过程
1 首先进入Tomcat安装路径 [root@tom01 tools]# cd /usr/local/ [root@tom01 local]# ls bin etc games include jdk lib lib64 libexec sbin share src tomcat创建两个实例目录
mkdir tomcat-1 tomcat-2 [root@tom01 local]# ls bin etc games include jdk lib lib64 libexec sbin share src tomcat tomcat-1 tomcat-22 拷贝文件到实例目录
cd /usr/local/tomcat cp -r conf/ webapps/ temp/ logs/ work/ …/tomcat-1 [root@tom01 tomcat]# ll …/tomcat-1 总用量 20 drwxr-xr-x 3 root root 4096 3月 6 17:02 conf drwxr-xr-x 2 root root 4096 3月 6 17:02 logs drwxr-xr-x 2 root root 4096 3月 6 17:02 temp drwxr-xr-x 7 root root 4096 3月 6 17:02 webapps drwxr-xr-x 3 root root 4096 3月 6 17:02 workcp -r conf/ webapps/ temp/ logs/ work/ …/tomcat-2
[root@tom01 local]# ll tomcat-2 总用量 20 drwxr-xr-x 3 root root 4096 3月 6 17:03 conf drwxr-xr-x 2 root root 4096 3月 6 17:03 logs drwxr-xr-x 2 root root 4096 3月 6 17:03 temp drwxr-xr-x 7 root root 4096 3月 6 17:03 webapps drwxr-xr-x 3 root root 4096 3月 6 17:03 work3 创建启动文件
mkdir /usr/local/tomcat-shell 启动脚本 [root@tom01 tomcat-shell]#vim start_tomcat.sh#!/bin/bashexport CATALINA_HOME=/usr/local/tomcatexport CATALINA_BASE=${1%/}echo $CATALINA_BASETOMCAT_ID=`ps aux |grep "java"|grep "Dcatalina.base=$CATALINA_BASE "|grep -v "grep"|awk '{ print $2}'`echo $TOMCAT_IDif [ -n "$TOMCAT_ID" ] ; thenecho "tomcat(${TOMCAT_ITOMCAT_ID}) still running now , please shutdown it firest"; exit 2;fiTOMCAT_START_LOG=`$CATALINA_HOME/bin/startup.sh`if [ "$?" = "0" ]; then echo "$0 ${1%/} start succeed"else echo "$0 ${1%/} start failed" echo $TOMCAT_START_LOGfi
停止脚本
[root@tom01 tomcat-shell]# vim stop_tomcat.sh#!/bin/bashexport CATALINA_HOME=/usr/local/tomcatexport CATALINA_BASE=${1%/}echo $CATALINA_BASETOMCAT_ID=`ps aux |grep "java"|grep "[D]catalina.base=$CATALINA_BASE "|awk '{ print $2}'`if [ -n "$TOMCAT_ID" ] ; thenTOMCAT_STOP_LOG=`$CATALINA_HOME/bin/shutdown.sh`else echo "Tomcat instance not found : ${1%/}" exitfiif [ "$?" = "0" ]; then echo "$0 ${1%/} stop succeed"else echo "$0 ${1%/} stop failed" echo $TOMCAT_STOP_LOGfi
4 修改实例端口
同一个服务器部署不同 Tomcat 要设置不同的端口,不然会报端口冲突,所以我们只需要修改conf/server.xml中的其中前三个端口就行了。但它有四个分别是 Server Port:该端口用于监听关闭tomcat的shutdown命令,默认为8005 Connector Port:该端口用于监听HTTP的请求,默认为8080 AJP Port:该端口用于监听AJP( Apache JServ Protocol )协议上的请求,通常用于整合Apache Server等其他HTTP服务器,默认为8009 Redirect Port:重定向端口,出现在Connector配置中,如果该Connector仅支持非SSL的普通http请求,那么该端口会把 https 的请求转发到这个Redirect Port指定的端口,默认为8443;我这里吧tomcat-1 端口设为 8081 tomcat-2 端口设为 8082
5 为每个实例创建不同的测试页面
[root@tom01 local]# vim /usr/local/tomcat-1/webapps/ROOT/index.jsp [root@tom01 local]# vim /usr/local/tomcat-2/webapps/ROOT/index.jsp插入代码
Tomcat-1 Hello Tomcat! from Tomcat-1.
6 启动多实例
/usr/local/tomcat-shell/start_tomcat.sh /usr/local/tomcat-1 /usr/local/tomcat-shell/start_tomcat.sh /usr/local/tomcat-27 检查启动情况
[root@tom01 local]# netstat -ant|grep “808” tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:8082 0.0.0.0:* LISTEN访问测试
转载地址:http://lurpb.baihongyu.com/