`

如何同时启动多个Tomcat服务器 - 重明鸟 - BlogJava

阅读更多
前些时日,出于某种需要,需要同时启动多个Tomcat服务器,在网上查了半天,才找到解决的办法,拿出来分享一下,嘿嘿。

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

? (1) 修改http访问端口(默认为8080端口)
?????????
<connector???classname="org.apache.coyote.tomcat4.coyoteconnector"???port="8080"<br>???????????????????????????????minProcessors="5"???maxProcessors="75"
????????????????????????????????enableLookups="true"???redirectPort="8443"
????????????????????????????????acceptCount="100"???debug="0"???connectionTimeout="20000"
????????????????????????????????useURIValidationHack="false"???disableUploadTimeout="true"/>

(大概在86行左右)将8080修改为第一个tomcat不在使用的端口号。此处所设的端口号即是以后访问web时所用的端口号。 ?

???
<server?port="8005"?shutdown="shutdown"?debug="0">

(大概在13行左右)将8005修改为没有在使用的端口号,例如8095???

?????????
< 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???
???

FeedBack:
2007-01-16 18:09 | 小雪飞刀
@hcom
您的意思是在一个Tomcat服务器下,部署多个Application吗?当然可以啦!
比如我在同一个Tomcat下
部署了app1和app2两个应用,
http端口设为8080,
我就可以通过http://localhost:8080/app1 和
http://localhost:8080/app2 两个地址访问我的服务。

而我文中的意思是一台PC或Server上同时启动多个Tomcat服务器。
如我同时启动了两个Tomcat服务器,其http端口分别为8888,9999。并在每个Tomcat上部署了app1和app2两个应用,
我就可以通过http://localhost:8888/app1 和
http://localhost:8888/app2 两个地址访问我的服务。
也可以通过http://localhost:9999/app1 和
http://localhost:9999/app2 两个地址访问我的服务。

不知道这样能不能回答您的问题呢?:-)
回复更多评论
2007-01-17 14:24 | zhyiwww
2007-01-19 15:59 | 小雪飞刀
Apache 和 Tomcat都可以做为独立的WEB服务器来用,apache功能强大、高效,但并不能支持JSP及serlet。Tomcat是Sun和Apache合作做出来的JSP Server,Tomcat目前已经成为Apache主要的Servlet和JSP的引擎。Tomcat在设计上是以独立的Server执行,而不像Jserv是附在Apache中,这样就更可以发挥在servlet中,非HttpServlet的能力。Tomcat是Java程序,所以只要有JDK就可以使用,不需要考虑操作系统平台。

作为WEB服务器扩展的Tomcat服务器有一些问题需要说明: 当处理静态页面时,Tomcat不如Apache迅速;Tomcat不象Apache一样可配置; Tomcat不象Apache一样强壮。基于以上原因,一个现实的网站使用一个Apache作为Web服务器,为网站的静态页面请求提供服务;并使用Tomcat服务器作为一个Servlet/JSP插件,显示网站的动态页面。

采用apache+tomcat这样的结构才具有更特出的优点,主要体现在具有更好的可扩展性和安全性。这种类型的站点的主要特点是每一个页面都可能是动态生成的,但这些数据中主要部分还是静态的(比如,各类图像GIF、JPG、PNG,流式媒体等),这种结构的优点是兼有可扩展性和安全性。
回复更多评论
2007-12-15 05:29 | sun
楼主,还有一个问题需要请教:
hcom 说的意思不是在一个tomcat下部署多个app,他的意思是安装一个tomcat,启动多个实例,例如我可以只安装一个tomcat但是经过配置,可以达到开启多个服务的目的,例如:http://localhost:8081/app1
http://localhost:8082/app1
而安装多个tomcat也可以达到以上的目的,我也是关于这个不清楚??回复更多评论
2007-12-17 11:42 | 小立飞刀
@sun
启动多个Tomcat服务,Tomcat的版本可以不同,可以分别升级,这几个Tomcat里的应用不会互相影响,并且web应用运行于多个JVM中;
启动多个Tomcat实例,Tomcat的版本相同,web应用也是分别运行在不同的JVM上。

PS:tomcat如何在一个程序版本上运行多个instance

tomcat有个环境变量CATALINA_BASE,用来指定一个目录,tomcat是依据该目录的内容来实现大部分的启动工作的,包括我们最关心的web app的加载,该目录由conf,logs,shared,webapps,work,temp子目录组成。这样,为每个instance新建一个目录,配置好其内容(注意同样要修改server.xml使端口不一样),然后在启动每个instance时使CATALLINA_BASE指向该instance对应的目录,就能实现启动多个instance的目的。可以在instance对应的目录下写一个startup.bat来完成该instance的启动工作,该脚本使用脚本所在的目录作为CATALINA_BASE,可以在从任何目录下运行,并且保留了tomcat启动脚本的参数:
@echo off set CMD_LINE_ARGS= :setArgs if ""%1""=="""" goto doneSetArgs set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 shift goto setArgs :doneSetArgs set EXECUTABLE=%CATALINA_HOME%\bin\startup.bat set CATALINA_BASE=%~dp0 call "EXECUTABLE" %CMD_LINE_ARGS%??
分享到:
评论

相关推荐

    tomcat中MySQL连接池配置 - feng - BlogJava.mht

    此文档主要是tomcat中MySQL连接池配置 - feng - BlogJava

    ruby查缺补漏 - 庄周梦蝶 - BlogJava 1

    ruby查缺补漏 - 庄周梦蝶 - BlogJava

    【整合iis+tomcat(成功)】

    2. "jakarta.rar" 这个文件可能是Apache Tomcat的一个旧版本或者是与Tomcat相关的组件,Jakarta是Tomcat早期版本的一部分,包含了很多Servlet和JSP的相关库。用户可能需要解压这个RAR文件,然后按照教程中的步骤进行...

    windows类书的学习心得 - 爪哇channel - BlogJava.htm

    最近总结手上下到的电子书,一看还真是多,全是精品,虽知大家都有了,仍不敢独食

    《JAVA2简明教程》课后习题答案及实验源码详解 - ∪∩deniable Design - BlogJava.txt

    根据提供的文件信息,本文将对《JAVA2简明教程》中的课后习题答案与实验源码进行详细解析。此教程适用于Java初学者以及希望...同时,实验部分也涉及到图形界面编程的基础知识,有助于学生掌握更高级的应用开发技术。

    Dojo之Widget标签开发 - 我为人人,人人为我 - BlogJava

    在IT行业中,Dojo是一个强大的JavaScript库,它专注于提供丰富的用户界面和应用程序开发工具。本文主要探讨的是在Dojo框架下进行Widget标签开发的技术细节,旨在帮助开发者更好地理解和利用Dojo构建可重用、模块化的...

    使用javamail发信过程中的一些问题及解决方法 - 鹰翔宇空 - BlogJava

    package com.hyq.test; import java.util.Properties; import javax.mail.*; import javax.mail.internet.*; public class MailExample { ... public static void main (String args[]) throws Exception { ........

    apache_tomcat负载集群配置

    文章apache_tomcat负载集群配置http://www.blogjava.net/pengo/archive/2011/04/15/348331.html的附件源码

    网页BlogJava

    网页BlogJava

    BlogJava博客文章爬取代码

    综上所述,"BlogJava博客文章爬取代码"项目涵盖了Java网络爬虫的基础知识和实践技巧,涉及网络请求、HTML解析、数据处理、并发控制等多个层面。通过学习和实践这个项目,开发者可以提升自己在网络爬虫领域的技能。

    nio资料,自学用,多个网文

    此外,还有"DANCE WITH JAVA - BlogJava.htm"和"使用Java NIO编写高性能的服务器 - Java - JavaEye论坛.htm",这两篇文章分别来自BlogJava和JavaEye论坛,它们可能提供了不同的角度和示例来解释如何利用Java NIO构建...

    超详细注释基于BlogJava主页的java爬虫程序

    2. **多线程**:Java提供了强大的多线程支持,可以并发处理多个URL,提高爬取效率。 3. **HTTP请求库**:可能采用了如Apache HttpClient或OkHttp这样的库,用于发起HTTP请求,获取网页内容。 4. **HTML解析库**:...

    MyEclipse 6 Java 开发中文教程_电子版.pdf

    - **Tomcat服务器**:作为Web应用服务器,Tomcat的安装和配置对于部署Web应用至关重要。 - **MySQL数据库**:无论是官方版还是绿色版,都应确保能够正常启动并创建数据库,以便进行数据存储。 2. **Eclipse与...

    MyEclipse6_5上基于JAX-WS开发Webservice(中文示例)

    4. 部署服务:在MyEclipse中,你可以直接将服务部署到服务器(如Tomcat)。右键点击项目,选择“Run As” -&gt; “Run on Server”,然后选择已配置的服务器实例。 5. 生成客户端代理:对于消费者来说,MyEclipse同样...

    超详细注释基于BlogJava主页的爬虫程序

    本项目是一个基于Java实现的爬虫框架,专注于从BlogJava网站抓取文章内容。这个爬虫程序利用了深度遍历和广度遍历两种策略,有效地爬取了近7万篇博客文章,为数据分析、信息挖掘提供了丰富的素材。 首先,我们来...

    MyEclipseHibernate快速入门

    Blog: http://www.blogjava.net/beansoft/ 可自由传播, 未经作者许可不得用于商业用途(如付费培训等). 注: 此文档原文(英文)位于 MyEclipse 安装后的帮助文档中. 最后修改: 五月 6, 2011十月 7, 2009 -----...

    Strut2 源码API +TagAPI +示例

    Strut2 源码API +TagAPI +示例 在Struts 2中实现文件上传 - Max On Java - BlogJava.files Struts 2的基石——拦截器(Interceptor) - Max On Java - BlogJava.htm Struts 2中的OGNL - Max On Java - BlogJava.htm

    openssl生成认证证书的工具

    因为证书颁发机构会给两个整数,一个是签署后的服务器证书,还有一个中级CA证书,所以要多一行配置。 可能证书颁发机构只会给你服务器证书也就是server.cer, 中级的CA证书即 intermediate.cer 需要到 证书颁发机构...

    J2EE开发必备知识手册

    1. **环境搭建**: 包括JDK、Tomcat、JBoss和MySQL等服务器软件的下载、安装和配置流程。这是进行任何Java Web应用开发的基础。 2. **集成开发环境(IDE)的选择**: Eclipse 和 MyEclipse 的安装与使用,特别是 ...

Global site tag (gtag.js) - Google Analytics