`
jandroid
  • 浏览: 1978146 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

关于多个TOMCAT的问题???

 
阅读更多

关于多个TOMCAT的问题???(这是一个朋友问的一个问题,大家都积极参与,取得很好的效果)

问题为:

我有两个项目,一个网站,一个论坛,因为论坛有上传、下载的功能。所以对速度影响很大,经常使得网站打开的很慢。
因为用的是同一个TOMCAT。我现在想一个项目使用一个TOMCAT。我在本地测了一下,我已经安装了一个TOMCAT,占的是8080端口。我另外又安装了一个TOMCAT,占的端口是8089。我把一个项目放到8089端口的这个TOMCAT下面。启动起来的时候竟然是8080那个TOMCAT上的项目,怎么回事?是不是我启动8089这个TOMCAT的时候,其实还是启动了8080这个端口,可是我安装的时候明明是8089呀。如果要达到我这样的效果,该怎么做呢?要用APACHE吗?我一直没用这个。

2楼朋友:看我这片文章,注意最下面2行:

http://blog.csdn.net/BearRui/archive/2008/10/08/3034489.aspx

另:因系统之前已安装tomcat1(setup.exe安装),再在系统中跑1个zip的tomcat2的时候,启动读取的配置文件一直读取的是之前安装tomcat1的配置文件(所以一直会启动8080这个端口),需要修改tomcat2 bin目录下的startup.bat和catalina.bat,在最前面加上一句:
set CATALINA_HOME=D:/Apache Software Foundation/Tomcat2

其中D:/Apache Software Foundation/Tomcat2就是你8089端口的tomcat所在文件夹路径

楼主回复:另外一个一定要用ZIP版的吗?

我在网上搜索后整理

我所用Tomcat服务器都为zip版,非安装版。
以两个为例:
安装第二个Tomcat完成后,到安装目录下的conf子目录中打开server.xml文件,查找以下三处:

(1) 修改http访问端口(默认为8080端口) <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8080"
minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="20000"
useURIValidationHack="false" disableUploadTimeout="true" />
(大概在86行左右)将8080修改为第一个tomcat不在使用的端口号。此处所设的端口号即是以后访问web时所用的端口号。
(2) 修改Shutdown端口(默认为8005端口) <Server port="8005" shutdown="SHUTDOWN" debug="0">
(大概在13行左右)将8005修改为没有在使用的端口号,例如8095
(3) 修改JVM启动端口(默认为8009端口) < Connector className ="org.apache.coyote.tomcat4.CoyoteConnector"
port ="8009" minProcessors ="5" maxProcessors ="75"
enableLookups ="true" redirectPort ="8443"
acceptCount ="10" debug ="0" connectionTimeout ="20000"
useURIValidationHack ="false"
protocolHandlerClassName ="org.apache.jk.server.JkCoyoteHandler" />
(大概在107行左右)将8009修改为没有在使用的端口号,例如8099

楼主既然对(1)端口已经修改了,没问题
修改一下下面两个就行了!

2楼朋友回复楼主:不用zip的,只要修改startup.bat和catalina.bat就行,你把8080的直接copy过来,然后改这2个文件

楼主回复我:我按你的方法修改了一下,唯一不同的是我的是安装版本的(这个应该是没问题的吧)
我启动的时候,看了一下启动信息,怎么还是启动的是8080那个呀。是不是还需要配置哪里?

楼主回复2楼朋友:

我启动第二个TOMCAT,跑的项目还是第一个TOMCAT下面的项目,怎么回事????
我是直接复制了第一个TOMCAT,然后把
set CATALINA_HOME=C:/Program Files/Apache Software Foundation/Tomcat1
放到startup.bat和catalina.bat的第一行里。
然后双击startup.bat,但是启动的还是第一个TOMCAT。

17楼朋友说:

我们的服务器用了Apache,下面跑了5个tomcat了,版本是5.5,一定要用解压版的tomcat
配置方法(增加第6个tomcat的方法)
1.复制tomcat文件夹,改名为tomcat6
2.tomcat/bin/startup.bat,CATALINA_HOME全部替换为CATALINA_HOME6
3.tomcat/bin/catalina.bat,CATALINA_HOME全部替换为CATALINA_HOME6
并找到set _EXECJAVA=start "Tomcat" %_RUNJAVA%,把Tomcat改为Tomcat6
4.tomcat6/conf/server.xml,
<Server port="9009" shutdown="SHUTDOWN">改为9010或其他未占用的端口
<Connector port="8080" maxHttpHeaderSize="8192"改为8086或其他未占用的端口
<Connector port="8010" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />改为8016
<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 改为8086
5.tomcat6/work/Catalina 下的文件可以删除
6.Apache2/conf/workers.properties worker.list=work1,work2,work3,work4,work5后面加,work6
并再最下面加上
worker.work6.port=8016
worker.work6.host=127.0.0.1
worker.work6.type=ajp13
worker.work6.lbfactor=1
8016要与前面配置的端口一致

7.配置环境变量
我的电脑右键-属性-高级-环境变量
系统变量里新建系统变量,变量名CATALINA_HOME6,变量值C:/Program Files/Apache Software Foundation/tomcat6

8.重启apache2,运行tomcat6/bin/startup.bat即可

2楼朋友说:你copy过去后要修改Tomcat1中server.xml中的端口,把端口由8080改成8089,你改了没

楼主回复2楼:没有,我以为不需要,再试试。非常感谢!!!

楼主:

非常感谢,我改了server.xml三个地方

HTML code

<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> <Server port="8095" shutdown="SHUTDOWN" debug="0"> <Connector port="8089" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" /> <Connector port="8099" enableLookups="false" redirectPort="8443" debug="0" protocol="AJP/1.3" />
是这样的吗?
这是日志报的错误:
HTML code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> 2008-10-14 13:01:38 StandardContext[/balancer]org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]] 2008-10-14 13:01:42 StandardContext[/jsp-examples]ContextListener: contextInitialized() 2008-10-14 13:01:42 StandardContext[/jsp-examples]SessionListener: contextInitialized() 2008-10-14 13:01:42 StandardContext[/servlets-examples]ContextListener: contextInitialized() 2008-10-14 13:01:42 StandardContext[/servlets-examples]SessionListener: contextInitialized() 2008-10-14 13:02:03 StandardContext[/servlets-examples]ContextListener: attributeReplaced('org.apache.catalina.WELCOME_FILES', '[Ljava.lang.String;@113981b') 2008-10-14 13:02:03 StandardContext[/servlets-examples]ContextListener: attributeReplaced('org.apache.catalina.WELCOME_FILES', '[Ljava.lang.String;@1672bbb') 2008-10-14 13:02:03 StandardContext[/servlets-examples]ContextListener: attributeReplaced('org.apache.catalina.WELCOME_FILES', '[Ljava.lang.String;@6833f2') 2008-10-14 13:02:03 StandardContext[/servlets-examples]SessionListener: contextDestroyed() 2008-10-14 13:02:03 StandardContext[/servlets-examples]ContextListener: contextDestroyed() 2008-10-14 13:02:03 StandardContext[/jsp-examples]ContextListener: attributeReplaced('org.apache.catalina.WELCOME_FILES', '[Ljava.lang.String;@1bdb58') 2008-10-14 13:02:03 StandardContext[/jsp-examples]ContextListener: attributeReplaced('org.apache.catalina.WELCOME_FILES', '[Ljava.lang.String;@dd75a4') 2008-10-14 13:02:03 StandardContext[/jsp-examples]ContextListener: attributeReplaced('org.apache.catalina.WELCOME_FILES', '[Ljava.lang.String;@1568654') 2008-10-14 13:02:03 StandardContext[/jsp-examples]SessionListener: contextDestroyed() 2008-10-14 13:02:03 StandardContext[/jsp-examples]ContextListener: contextDestroyed()
我说:不过最好Tomcat服务器都为zip版,非安装版。
楼主试试,应该可以的啊
楼主说:我现在只改动 <Connector
port="8089" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" />
这一个,现在可以启动第二个,但是打开的还是第一个。我有把
set CATALINA_HOME=C:/Program Files/Apache Software Foundation/Tomcat1
放到startup.bat和catalina.bat的最上面。
我设置了系统的环境变量,是不是它首先会读取这个,所以每次都读到的是第一个TOMCAT。
2楼朋友:你把webapps目录下的文件全删除了,可能是系统部署出问题了!!!
楼主:还是没用,我在系统环境变量里配置的TOMCAT是第一个TOMCAT的东西。
我想问一下是不是要把这个给删除了。
我把系统环境变量关于TOMCAT的东西都删除掉了,现在第二个TOMCAT也是可以的,
但是现在又有一个问题了,我启动了一个TOMCAT,另外一个就不能启动了,如果两个不能同时启动,
那做这个也就没有意义了?
最后:总是已经解决了,是把server.xml其它两个端口也全改了,谢谢大家。特别感谢BearRui。
等晚上的时候结贴。再次感谢大家。
竹大补充:不单单是修改一个端口,server.xml里面的几个端口都要修改的。
你可以参考tomcat负载均衡的文章,里面就是同时运行多个 tomcat的,cluster集群
这个是我亲自尝试的,你参考看看吧!
Apache+Tomcat负载均衡和集群的尝试


分享到:
评论

相关推荐

    同时部署多个Tomcat

    一、为什么需要同时部署多个Tomcat? 1. 应用隔离:每个Tomcat实例可以独立运行不同的Web应用,避免一个应用的问题影响其他应用。 2. 负载均衡:通过配置负载均衡器,可以将请求分发到多个Tomcat实例,提高系统处理...

    linux安装多个tomcat

    在Linux系统中安装多个Tomcat服务器是常见的需求,特别是在开发和测试环境中,为了隔离不同的项目或者版本,每个项目可能需要独立的Tomcat实例。本文将详细介绍如何在Linux上安装和管理多个Tomcat。 首先,我们需要...

    ubuntu配置多个tomcat方法

    ### Ubuntu配置多个Tomcat的方法详解 #### 一、前言 在Linux环境下,特别是Ubuntu操作系统中,有时我们需要在同一台服务器上部署多个Tomcat实例来满足不同的应用需求或进行负载均衡等操作。本文将详细介绍如何在...

    Windows nginx +多个 tomcat 配置

    Windows nginx +多个 Tomcat 配置是一种常见的服务器架构,用于解决网站高并发的问题。通过使用 nginx 作为反向代理服务器,并将多个 Tomcat 服务器作为后端服务器,可以实现负载均衡,提高网站的访问速度和并发...

    Myeclipse配置多个Tomcat

    MyEclipse 配置多个 Tomcat 在 MyEclipse 中配置多个 Tomcat 是一种非常实用的方法尤其是在开发多个项目时,避免了每个项目之间的冲突和配置修改的烦恼。下面我们将一步步地讲解如何在 MyEclipse 中配置多个 Tomcat...

    apache+多个tomcat+https

    在IT行业中,构建大型、高可用的Web服务架构时,常常会遇到需要部署多个Tomcat应用服务器的情况。这时,为了优化资源利用和提高安全性,我们可以使用Apache HTTP Server作为前端代理,来转发HTTPS请求到各个Tomcat...

    xp/win7上配置多个tomcat

    在IT领域,特别是对于Web应用开发与部署而言,配置多个Tomcat服务器实例是常见的需求,尤其是在Windows XP或Win7这样的操作系统环境下。本文将深入探讨如何在XP或Win7系统上成功配置并运行多个Apache Tomcat服务器,...

    IIS整合多个tomcat

    "IIS整合多个Tomcat"是一个常见的需求,特别是在大型企业或高流量网站中,为了提高可用性和负载均衡,通常会使用多个应用服务器。IIS(Internet Information Services)是微软提供的一个强大的Web服务器,而Tomcat则...

    同一服务器部署多个Tomcat方法.docx

    ### 同一服务器部署多个Tomcat的方法 在实际的应用场景中,有时我们可能需要在同一台服务器上部署多个Tomcat实例来满足不同的应用需求或进行负载均衡。本文将详细介绍如何在同一台Windows服务器上部署多个Tomcat...

    一台服务器多个tomcat配置

    一台服务器多个 Tomcat 配置 在一台服务器上配置多个 Tomcat 服务器时,往往会碰到冲突。为了避免这些冲突,需要修改 Tomcat 配置文件。下面是详细的配置过程: 一、下载和解压 Tomcat 首先,需要下载 Tomcat 的...

    运行多个tomcat实例

    ### 运行多个Tomcat实例 #### 背景与需求 在软件开发与测试过程中,经常需要将不同阶段的应用程序部署在同一台服务器上。例如,一个处于alpha测试阶段的应用程序可能需要与已经稳定运行的生产环境应用程序共存于...

    tomcat部署多个项目

    ### Tomcat部署多个项目的详细指南 #### 一、前言 Apache Tomcat 是一款非常流行的 Java Web 应用服务器,广泛用于开发、测试以及生产环境中部署 Java Web 应用程序。当需要在同一台服务器上部署多个项目时,合理...

    服务器部署多个tomcat方法

    标题"服务器部署多个tomcat方法"暗示我们将探讨如何在单个服务器上配置和管理多个独立运行的Tomcat实例,以实现应用隔离、负载均衡或服务多样化。这通常涉及到配置、端口管理、目录结构和启动脚本的调整。 首先,...

    nginx-配置多个tomcat

    本示例中的"nginx-配置多个tomcat"就是这样一个应用场景,它涉及到Nginx和Tomcat两个核心组件,以及如何通过Nginx作为反向代理来管理多个Tomcat实例。 **Nginx** 是一款高性能的HTTP和反向代理服务器,以其轻量级、...

    MyEclipse配置多个Tomcat

    本篇文章将详细讲解如何在MyEclipse集成开发环境中配置多个Tomcat服务器,以满足多版本并行运行的需求。 首先,理解MyEclipse是基于Eclipse的一款强大的Java EE集成开发环境,它内置了多种服务器适配器,包括Tomcat...

    winserver2008下apahce连多个tomcat下效率问题

    标题“winserver2008下apahce连多个tomcat下效率问题”涉及的是在Windows Server 2008操作系统环境下,如何高效地配置Apache HTTP服务器与多个Tomcat应用服务器进行连接。Apache通常作为前端服务器,通过代理(如mod...

    教你如何安装多个Tomcat

    下面将详细介绍如何在一台计算机上安装和配置多个Tomcat实例,以避免端口冲突和其他问题。 首先,安装多个Tomcat的关键在于正确地配置环境变量。每个Tomcat实例都需要有自己的工作目录,这是通过设置`CATALINA_BASE...

    nginx实现多个tomcat7直接session共享所需jar包

    标题中的“nginx实现多个tomcat7直接...以上就是关于“nginx实现多个tomcat7直接session共享所需jar包”的详细解释,包括了Session共享的背景、原理以及可能的实现方法。希望这些信息能帮助你理解和解决实际问题。

    同一台服务器(电脑)运行多个Tomcat的设置方法步骤

    大多人在Windows平台用的Tomcat都是免安装版本的,很自然想到复制几份目录,就是在同一个电脑上跑多个Tomcat服务了。实际上是不可以的。经过如下方法就可以实现统一台服务器(电脑)上运行多个Tomcat的目的了。 1、...

    tomcat一台电脑多个tomcat

    多个tomcat部署在一个服务器上的文档应用。自己查阅资料总结。

Global site tag (gtag.js) - Google Analytics