`

Tomcat配置多个Service,多个同名的应用运行在一个tomcat下

阅读更多
http://www.ff-bb.cn/logs/109466274.html

Tomcat配置多个Service,多个同名的应用运行在一个tomcat下

网站项目中有时候会碰到,每个网站一个网站后台程序,偏偏因为某种原因,这后台程序的名称还是一样的,比如都叫 app.war,这样如果有2个或以上网站需要用各自的app.war,那么就需要安装多个tomcat,资源浪费比较大。也不好管理。有没有一种可能,将这几个app.war放到一个tomcat下运行呢?  答案是可以的。

修改%TOMCAT_HOME%/conf/server.xml
将Service元素复制一份,直接粘贴到原来那个Service元素之后,即 .....这一部分复制下来,放到第一个 之后,然后再继续修改刚刚添加的部分配置信息:

按照下列步骤修改第二个Service元素:

将Service元素的name属性改为Catalina2
将第一个Connector元素的port属性由8080改为其他未使用的端口,如8081
将第二个Connector元素的port属性由8009改为其他未使用的端口,如8010
将Engine元素的name属性由Catalina改为Catalina2,与Service的name属性保持一致
将Host元素的appBase属性由webapps改为webapps2
创建目录
%TOMCAT_HOME%/conf/Catalina2/localhost
%TOMCAT_HOME%/webapps2
将%TOMCAT_HOME%/webapps/ROOT复制到%TOMCAT_HOME%/webapps2

这样就有两个工程放置的目录,一个是webapp 一个是webapp2,这里面都可以放你的war工程,而且如果工程名字相同都没有问题。它们之间是没有干扰的。

启动Tomcat
访问tomcat主页 可以
http://localhost:8080/app
http://localhost:8081/app

当然你可以配置了多个 Service 元素。就需要修改Tomcat的内存参数,防止内存溢出。如果你是linux系统,修改 %TOMCAT_HOME%/bin/catalina.bat 
-Xms //初始堆大小 
-Xmx //最大堆大小 
-XX:PermSize    //初始永久区大小 
-XX:MaxPermSize  //最大永久区大小 
放到有效配置的第一行

set JAVA_OPTS=-server -Xincgc -Xms1024m -Xmx1024m -XX:MaxPermSize=256m 

如果你是windows系统,去修改注册表吧,
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\tomcat6.0\Parameters\Java
右边的 Options 里面一条配置占一行 前后不能有空格。
然后重启。
分享到:
评论

相关推荐

    通向架构师的道路(第五天)之tomcat集群-群猫乱舞

    2. 纵向集群:在同一台物理机上运行多个Tomcat实例,主要利用现有的内存资源,但CPU扩展有限。 在这个特定案例中,由于客户不愿意增加硬件投入,且现有Tomcat的CPU负载不高,内存利用率较低,选择的是纵向集群。...

    NGINX-配置手册

    - 在`upstream`块中指定多个Tomcat服务器的地址及权重分配。 - 示例代码如下: ```nginx upstream tomcat_host { ip_hash; server 127.0.0.1:8080 max_fails=0 weight=1; server 127.0.0.1:8090 max_fails=0 ...

    超级有影响力霸气的Java面试题大全文档

    如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。 18、error和exception有什么区别?  error 表示恢复...

    ssh搭建的文档

    如果已有一个同名项目,新建时会提示,不会影响后续操作。注意,项目应选用J2EE 5.0版本,以避免因版本过高导致的jsp解析错误。 2. **添加jar包**: 首先,你需要收集SSH框架所需的全部jar包。然后,通过Myeclipse...

    最新EJB3.0教程

    接着,通过一个示例项目,演示了如何在本地环境中运行EJB3应用,并且介绍了如何在独立的Tomcat服务器中调用EJB,以及在JBOSS中的Web应用如何调用EJB。 ### 基础知识学习 深入讲解JBOSS的目录结构,这是理解EJB3...

    java 面试题 总结

    如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。 15、error和exception有什么区别? error 表示恢复不是...

    ejb3中文教程ejb3中文教程

    阐述在多个J2EE组件间共享第三方库的打包策略,确保所有组件能够正确加载和使用这些库。 **2.7 如何恢复本书配套例子的开发环境** 提供步骤来重建书中所用的开发环境,包括软件版本、配置设置等,以便读者能够顺利...

    JavaWeb项目部署到服务器详细步骤详解

    本文主要介绍了JavaWeb项目如何部署到服务器的详细步骤,包括本地准备、服务器准备、tomcat注册为系统服务等多个方面的内容。 一、JavaWeb项目部署到服务器的必要条件 为了部署JavaWeb项目到服务器,需要具备以下...

    EJB3.0中文资料

    - 有状态会话Bean在多个方法调用之间维护客户的状态,适用于需要跟踪状态的场景。 ##### 4.3 STATELESS SESSION BEAN与STATEFUL SESSION BEAN的区别 - **状态管理**: 有状态会话Bean需要维护状态,而无状态会话...

    java面试题

    答:多形:一个类中多个同名方法。继承:子类继承父类。 jsp内置对象? 答:request 用户端请求 response 回应 pageContext 网页属性 session 会话 out 输出 page 当前网页 exception 错误网页 application ...

    精品(2021-2022年)资料达内Android全真模块实训.docx

    - **方法重载和封装**:重载允许在一个类中定义多个同名但参数不同的方法;封装将数据和行为绑定在一起。 - **访问修饰符**:如public、private控制成员的访问权限。 - **static和final关键字**:static用于声明类...

    笔试型_J2EE初级技术面试题目

    `Overload`指的是方法重载,即在一个类中可以有多个同名但参数列表不同的方法;`Override`指的是方法重写,即子类重写父类的方法,必须有相同的方法签名,并且访问修饰符不能比父类更严格。 #### 10. Swing布局管理...

    2021-2022计算机二级等级考试试题及答案No.2514.docx

    计算机二级等级考试主要涵盖计算机基础知识、编程语言、数据库操作、网络知识、软件工程等多个方面的内容。以下是根据题目提供的部分知识点的详细解释: 1. 数据的存储结构与数据处理的效率密切相关,不同的存储...

    linux快捷键2.txt

    - 创建一个或多个新的目录。 - **常见选项**: - `-p`:递归创建目录,即使中间有不存在的父目录也会被自动创建。 #### 3. `cd` (改变当前工作目录) - **命令格式**: - `cd [目录路径]` - **功能描述**: - ...

    2021-2022计算机二级等级考试试题及答案No.11416.docx

    计算机二级等级考试主要涵盖计算机基础知识、编程语言、数据库管理、操作系统、网络技术等多个方面的知识。以下是对题目中涉及的知识点的详细解释: 1. **PSP**:PSP(Public Switched Telephone Network Provider...

Global site tag (gtag.js) - Google Analytics