码迷,mamicode.com
首页 > 其他好文 > 详细

多个tomcat 共享一个应用程序目录

时间:2015-06-02 18:06:06      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:tomcat

在实际的项目中,有时我们需要用到负载均衡配置,需要处理多个tomcat,但是如果每个tomcat中都使用同样代码的应用程序,会显得很臃肿,我们可以将这个应用程序给单独的提出来作为每一个tomcat服务器共享一个使用。

第一种方式,把应用放到一个公共目录,修改server.xml中配置

<!-- 虚拟主机localhost appBase : 指 定虚拟主机的目录,可以指定绝对目录,也可以指定相对于<CATALINA_HOME>的相对目录.如果没有此项,默认 为<CATALINA_HOME>/webapps. 它将匹配请求和自己的Context的路径,并把请求转交给对应的Context来处 理 !-->

技术分享

name 表示机器ip地址,默认本机是localhost,appBase是应用程序目录,可以指定一个绝对位置

如果在负载均衡处理中使用多个tomcat需要修改各个tomcat的server,内容同上。

然后把你的应用程序放在指定的webapps目录下,当然你也可以将tomcat中默认的webapps应用程序一起拷贝过来,示例如下

技术分享

技术分享

启动两个tomcat的日志记录如下

技术分享

这种方式还有另外一种配置方法,如下图配置

技术分享

但是以上配置中,有网友说不建议使用此类配置,最好不要修改server.,xml文件

第二种方式:不修改Server.xml文件

使用默认的 <Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true">配置
在apache-tomcat-8.0.20\conf\Catalina 下新建localhost目录,并新建一个xml文件,譬如你的应用程序为http:localhost:8080/DemoWeb,那么你的xml文件为DemoWeb.xml
文件内容为以下配置,在docBase中最好使用绝对位置,在linux中使用 / 斜线,与Windows不同,然后将这个xml文件拷贝到apache-tomcat-7.0.52的相同目录结构下
技术分享
<?xml version="1.0" encoding="UTF-8"?> 
<Context docBase="D:\workSpaces\Server\ApacheTomcatLoadBalance\webapps\DemoWeb" reloadable="true">
</Context>
启动日志如下
技术分享


Java开发中的reloadable设置

   为了在开发时,让tomcat能够自动重新加载,我们修改过的代码和配置,需要对Tomcat的context.xml文件进行设置。

在<context>标签中,加上reloadable属性,并且将值设为true

<Context reloadable="true">  
    <!--注意: reloadable设为true,目的是为了方便开发阶段, 它会影响tomcat性能;当在正式部署服务时,需要改成false --> 






多个tomcat 共享一个应用程序目录

标签:tomcat

原文地址:http://blog.csdn.net/xiaokui_wingfly/article/details/46328053

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!