tomcat多实例

来源:互联网 发布:淘宝开充值店怎么开 编辑:程序博客网 时间:2024/05/18 02:22

转做服务端开发也有一段时间了,每次部署项目的时候,就根据前人的配置来设置,今天自己需要在一台干净的机子部署项目,然后查看了tomcat的配置,觉得很奇怪每个项目有自己的a.tomcat,b.tomcat实例,但是没有lib文件夹。另外还有一个完整的tomcat7,自己就纳闷了,在a.tomcat的bin目录下的start.sh看到如下代码

#!/bin/bash#chown 555 -R /export/home/tomcat/domains/export CATALINA_HOME=/export/servers/tomcatexport CATALINA_BASE=/export/Domains/XXXX.com/server1###JAVAexport JAVA_HOME=/export/servers/jdkexport JAVA_BIN=/export/servers/jdk/binexport PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/binexport CLASSPATH=.:/lib/dt.jar:/lib/tools.jarexport  JAVA_OPTS="-Djava.library.path=/usr/local/lib -server -Xms1024m -Xmx1024m -XX:MaxPermSize=256m -Djava.awt.headless=true -Dsun.net.client.defaultConnectTimeout=60000 -Dsun.net.client.defaultReadTimeout=60000 -Djmagick.systemclassloader=no -Dnetworkaddress.cache.ttl=300 -Dsun.net.inetaddr.ttl=300"export JAVA_HOME JAVA_BIN PATH CLASSPATH JAVA_OPTS$CATALINA_HOME/bin/startup.sh -config $CATALINA_BASE/conf/server.xml

stop.sh

#!/bin/bashexport CATALINA_HOME=/export/servers/tomcatexport CATALINA_BASE=/export/Domains/xxx.com/server1$CATALINA_HOME/bin/shutdown.sh -config $CATALINA_BASE/conf/server.xmlps -aef | grep java|grep "/show.bigdata.gogbuy.com/server1/"| grep -v grep | sed 's/ [ ]*/:/g' |cut -d: -f2|kill -9 `cat`

原来是tomcat多实例,之前从来没注意过这方面,罪过啊。然后对CATALINA_HOME和CATALINA_BASE感到迷惑,这不是我一直在WIN7下面配置tomcat环境变量的时候设置的吗,到底是啥意思呢?同样感到懵逼,然后到官网(http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html)查看到如下说明:

The description below uses the variable name $CATALINA_BASE to refer the base directory against which most relative paths are resolved. If you have not configured Tomcat for multiple instances by setting a CATALINA_BASE directory, then $CATALINA_BASE will be set to the value of $CATALINA_HOME, the directory into which you have installed Tomcat.

大概就是CATALINA_HOME是tomcat的安装目录,CATALINA_BASE是Tomcat的工作目录。同样参考
1.http://blog.csdn.net/jiaotuwoaini/article/details/51455829
2.http://yuri-liuyu.iteye.com/blog/960964

Tomcat每个运行实例需要使用自己的conf、logs、temp、webapps、work和shared目录,因此CATALINA_BASE就 指向这些目录。 而其他目录主要包括了Tomcat的二进制文件和脚本,CATALINA_HOME就指向这些目录。

如果我们希望再运行另一个Tomcat实例,那么我们可以建立一个目录,把conf、logs、temp、webapps、work和shared拷贝 到该目录下,然后让CATALINA_BASE指向该目录即可。

现在终于明了了。

原创粉丝点击