日期:2014-05-17  浏览次数:20894 次

两个一样的tomcat不能同时启动
前提:最近在学服务器集群,现在弄的是纵向集群,即一台电脑上有多个服务器,扩大CPU使用率。
问题:我的服务器是Tomcat6.0.20,修改完所有端口之后(shutdown端口、http端口、https端口、ajp端口),启动一个就不能启动另一个。
环境:两个Tomcat6.0.20,使用一个JVM,JDK6,Win7 64位系统。

系统环境变量里的CATALINA_HOME已经删除,根据catalina.bat里的代码来看,应该走的是自己设置的临时环境变量。

求解答,感激不尽。


------解决方案--------------------
两个startup.bat最前面加上一句
set CATALINA_HOME=当前TOMCAT路径
就可以了
------解决方案--------------------
当第一个tomcat启动后,后面tomcat的server.xml中的端口不管怎么改,仍然会报端口冲突。后来在dos下运行才发现所有的tomcat都会去找CATALINA_HOME和CATALINA_BASE这两个环境变量,因此步骤如下:
1.使用压缩版的tomcat不能使用安装版的。
2.第一个tomcat的配置不变。
3.增加环境变量CATALINA_HOME2,值为新的tomcat的地址;增加环境变量CATALINA_BASE2,值为新的tomcat的地址。
4.修改新的tomcat中的startup.bat,把其中的CATALINA_HOME改为CATALINA_HOME2。
5.修改新的tomcat中的catalina.bat,把其中的CATALINA_HOME改为CATALINA_HOME2,CATALINA_BASE改为CATALINA_BASE2。
6.修改conf/server.xml文件:
6.1 <Server port="8005" shutdown="SHUTDOWN">把端口改为没有是使用的端口。
6.2 <Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" /> 把端口改为没有是使用的端口。
6.3<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" /> 把端口改为没有是使用的端口。

7成功!

8 第三、第四.....等N台服务器参考3~6 步顺序进行即可!
祝你好运!

------解决方案--------------------
在cmd命令行执行
1、netstat –ano 查看端口情况
2、tasklist 查看运行程序情况
3、杀掉占用你多需要端口的程序