Tomcat集群配置笔记 ( by quqi99 )
作者:张华 发表于:2011-04-06
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明
( http://blog.csdn.net/quqi99 )
h1 { margin-top: 0.6cm; margin-bottom: 0.58cm; line-height: 200%; page-break-inside: avoid; }h1.western { font-family: "Times New Roman",serif; font-size: 22pt; }h1.cjk { font-family: "Arial Unicode MS"; font-size: 22pt; font-style: normal; font-weight: bold; }h1.ctl { font-size: 22pt; font-weight: bold; }h1.样式-标题-1- + -四号-western { font-family: "Times New Roman",serif; font-size: 14pt; line-height: 150%; }h1.样式-标题-1- + -四号-cjk { font-family: "Arial Unicode MS"; font-style: normal; font-weight: bold; line-height: 150%; }h1.样式-标题-1- + -四号-ctl { font-size: 22pt; font-weight: bold; line-height: 150%; }p { margin-bottom: 0.21cm; }a:link { color: rgb(0, 0, 255); }
一.
环境说明
1.
服务器3
台,一台安装apache
服务,两台安装tomcat
2.
使用到的各个组件及下载地址:
apache_2.2.11-win32-x86-no_ssl.msi
http://httpd.apache.org/download.cgi
tomcat
6
压缩版
http://tomcat.apache.org/download-60.cgi
apache
的JK
连接器(Windows
版本),作为apache
的一个module
,网站同时提供了配置文件的使用方法
mod_jk-1.2.28-httpd-2.2.3.so
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.28/
3.ip
配置
一台安装apache
的ip
为192.168.1.50
,两台安装tomcat
的ip
分别为192.168.1.24
和192.168.1.52
(根据各自情况分配)
二.安装过程
1.
在两台安装tomcat
的机器上安装jdk6
(至少jdk5
)
2.
配置jdk
的安装路径,
在环境变量path
中加入jdk
的bin
路径,
新建环境变量JAVA_HOME
指向jdk
的安装路径
3.
安装tomcat
,并测试tomcat
的启动是否正常
http://192.168.1.24:8080
http://192.168.1.50:8080
三.负载均衡配置过程
1.
在192.168.1.50
机器上安装apache
服务,我的安装路径默认为:D:/Program
Files/Apache Software Foundation/Apache2.2
2.
安装完成后测试能否正常启动,http://192.168.1.50
,如图所示:
3.
将mod_jk-1.2.28-httpd-2.2.3.so
拷贝到apache
的modules
目录下
2.
修改apache
的配置文件
httpd.cof
,在最后加上下面这段话:
LoadModule
jk_module modules/mod_jk-1.2.28-httpd-2.2.3.so #
载入jk
连接器
JkWorkersFile
conf/workers.properties #
设置负载均衡的配置文件,即定义均衡规则
JkLogFile
logs/mod_jk.log #
指定日志文件
JkLogLevel
debug #
指定日志级别
#
配置apache
将哪些请求转发给JK
进行均衡
JkMount
/*.jsp loadbalancer
JkMount
/test/* loadbalancer
3.
分别修改两个tomcat
的配置文件conf/server.xml
文件
修改前:
<!--
An Engine represents the entry point (within Catalina) that processes
every
request. The Engine implementation for Tomcat stand alone
analyzes
the HTTP headers included with the request, and passes them
on
to the appropriate Host (virtual host).
Documentation
at /docs/config/engine.html -->
<!--
You should set jvmRoute to support load-balancing via AJP ie :
<Engine
name="Catalina" defaultHost="localhost"
jvmRoute="jvm1">
-->
<Engine
name="Catalina" defaultHost="localhost">
修改后:
<!--
An Engine represents the entry point (within Catalina) that processes
every
request. The Engine implementation for Tomcat stand alone
analyzes
the HTTP headers included with the request, and passes them
on
to the appropriate Host (virtual host).
Documentation
at /docs/config/engine.html -->
<!--
You should set jvmRoute to support load-balancing via AJP ie : -->
<Engine
name="Catalina" defaultHost="localhost"
jvmRoute="node1">
<Engine
name="Catalina" defaultHost="localhost" >
将其中的jvmRoute="jvm1"
分别修改为jvmRoute="node1"
和jvmRoute="node2"
4.
在apache
的conf
目录下创建workers.property
文件,输入以下内容:
#
fine the communication channel
#
定义负载均衡的所有主机名,和前面tomcat
配置文件的JVMroute
属性相对应
#
其中的loadbalancer
是虚拟的主机,负责负载均衡,姑且当成是apache
本身
worker.list=node1,node2,loadbalancer
#
node1
使用AJP
与JK
通讯
worker.node1.port=8009
#
工作端口,若没占用则不用修改
worker.node1.host=192.168.1.24
# node1
的地址为localhost
,如果tomcat
在其他服务器则输入该服务器的地址
worker.node1.type=ajp13
#
类型
worker.node1.lbfactor=100
#
负载平衡因数
worker.node2.port=9009
#
工作端口,若没占用则不用修改
worker.node2.host=192.168.1.52
#node2
服务器的地址
worker.node2.type=ajp13
#
类型
worker.node2.lbfactor=100
#
负载因子,值越大则JK
分发到此tomcat
的负荷越多
#
定义loadbalancer
类型为“负载均衡器(lb
)”
worker.loadbalancer.type=lb
#
定义loadbalancer
进行负载均衡的对象
worker.loadbalancer.balanced_workers=node1,node2
worker.loadbalancer.sticky_session=false
worker.loadbalancer.sticky_session_force=false
5.
在两个tomcat
的安装目录中的webapps
建立相同的应用,我的应用名为test
,在两个应用目录中建立相同
WEB-INF
目录和页面test.jsp
的页面内容如下
<%@
page
language
=
"java"
contentType
=
"text/html;
charset=ISO-8859-1"
pageEncoding
=
"GBK"
%>
<!
DOCTYPE
html
PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"
>
<
html
>
<
head
>
<
meta
http-equiv
=
"Content-Type"
content
=
"text/html;
charset=ISO-8859-1"
>
<
title
>
helloapp
</
title
>
</
head
>
<
body
>
<%
System.out.println(
"call
test.jsp"
);
//
在Tomcat
控制台上打印一些跟踪数据
%>
SessionID:
<%=
session.getId()
%>
</
body
>
</
html
>
6.
重启
apache
服务器和两个
tomcat
服务器,到此负载均衡已经配置完成,测试负载均衡:
http://192.168.1.50/test/test.jsp
,
运行正常则已建立负载均衡
四.集群配置
1.
负载均衡的条件下配置tomcat
集群
2
.分别修改两个tomcat
的配置文件conf/server.xml,
修改内容如下
修改前:
<!--
<Cluster
className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
-->
修改后:
<
Cluster
className
=
"org.apache.catalina.ha.tcp.SimpleTcpCluster"
channelSendOptions
=
"8"
>
<
Manager
className
=
"org.apache.catalina.ha.session.DeltaManager"
expireSessionsOnShutdown
=
"false"
notifyListenersOnReplication
=
"true"
/>
<
Channel
className
=
"org.apache.catalina.tribes.group.GroupChannel"
>
<
Membership
className
=
"org.apache.catalina.tribes.membership.McastService"
bind
=
"192.168.1.100"
address
=
"228.0.0.4"
port
=
"45564"
frequency
=
"500"
dropTime
=
"3000"
/>
<
Receiver
className
=
"org.apache.catalina.tribes.transport.nio.NioReceiver"
address
=
"auto"
port
=
"4000"
autoBind
=
"100"
selectorTimeout
=
"5000"
maxThreads
=
"6"
/>
<
Sender
className
=
"org.apache.catalina.tribes.transport.ReplicationTransmitter"
>
<
Transport
className
=
"org.apache.catalina.tribes.transport.nio.PooledParallelSender"
/>
</
Sender
>
<
Interceptor
className
=
"org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"
/>
<
Interceptor
className
=
"org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"
/>
</
Channel
>
<
Valve
className
=
"org.apache.catalina.ha.tcp.ReplicationValve"
filter
=
""
/>
<
Valve
className
=
"org.apache.catalina.ha.session.JvmRouteBinderValve"
/>
<
Deployer
className
=
"org.apache.catalina.ha.deploy.FarmWarDeployer"
tempDir
=
"/tmp/war-temp/"
deployDir
=
"/tmp/war-deploy/"
watchDir
=
"/tmp/war-listen/"
watchEnabled
=
"false"
/>
<
ClusterListener
className
=
"org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"
/>
<
ClusterListener
className
=
"org.apache.catalina.ha.session.ClusterSessionListener"
/>
</
Cluster
>
注意:bind
是tomcat
服务器所在的机器的ip
地址
3.
重启两个tomcat
,到此tomcat
的集群配置完成
五.应用配置
对于要进行负载和集群的的tomcat
目录下的webapps
中的应用中的WEB-INF
中的web.xml
文件要添加如下一句配置
<distributable/>
配置前:
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
web-app
id
=
"WebApp_ID"
version
=
"2.4"
xmlns
=
"http://java.sun.com/xml/ns/j2ee"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
=
"http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
>
<
display-name
>
test
</
display-name
>
<
distributable
/>
<
welcome-file-list
>
<
welcome-file
>
index.
html
</
welcome-file
>
<
welcome-file
>
index.
htm
</
welcome-file
>
<
welcome-file
>
index.
jsp
</
welcome-file
>
<
welcome-file
>
default.
html
</
welcome-file
>
<
welcome-file
>
default.
htm
</
welcome-file
>
<
welcome-file
>
default.
jsp
</
welcome-file
>
</
welcome-file-list
>
</
web-app
>
六.测试集群
重新启动apache
服务器和两个tomcat
服务器,输入地址:http://192.168.1.50/test/test.jsp
运行结果如下:
如果同一个浏览器的sessionID
不变,则集群配置成功
分享到:
相关推荐
综上所述,"quqi.rar_mtk_mtk software_mtk平台"这一软件包的发布,不仅为MTK平台的用户提供了一站式解决方案,方便他们管理和维护自己的设备,同时也展现了MediaTek在智能手机领域不断追求技术创新和服务完善的决心...
9. **调试工具**:如GraphEdit,这是一个可视化的过滤图编辑工具,可以帮助开发者调试过滤图的连接和配置。 在项目提供的"新建 Microsoft Word 文档.doc"中,可能包含了关于这个DirectShow视频播放器的源代码和详细...
国内最好的数据库达梦DM8,曲奇网盘下载链接:https://quqi.com/s/1243222/wcOZdaWgUlHrwhOk
基于改进YOLOv5s的森林烟火检测算法.pdf
人力资源管理工具绩效考核excel模板01
施工班组长绩效考核表
57 -营业部经理绩效考核表1
XX公司行政部绩效考核指标
1、文件内容:ant-apache-xalan2-1.9.4-2.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/ant-apache-xalan2-1.9.4-2.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装
部门绩效考核表模板(基于KPI以月度为例2)
11-6-质检员绩效考核表(含自动计算、等级评价及任意设置等级)
2024最新全国河流湖泊矢量数据 【数据介绍】 2024年中国河流湖泊数据 一份包含中国境内所有主要河流和湖泊的地理信息数据。 数据格式:Shapefile:广泛使用的GIS数据格式,方便在各类GIS软件中使用。 数据获取:访问OpenStreetMap官网,通过导出工具选择中国区域并下载所需的数据。 使用Geofabrik等第三方网站,可以下载预处理好的中国区域的OSM数据。 数据使用:GIS软件:如QGIS、ArcGIS等,用户可以在这些软件中导入OSM数据进行可视化、分析和编辑。 数据应用: 环境研究:分析河流湖泊的水质变化,研究水资源分布及其环境影响。 城市规划:用于规划城市水系、洪水防控、水资源管理等。 导航和旅游:为河流湖泊的导航和旅游路线规划提供数据支持。 科研:为水文地理研究、生态保护、气候变化等领域提供基础数据。 数据特点: 实时更新:OSM数据由全球用户贡献,具有较高的实时性和更新频率。 开放性:所有数据都在开放许可下发布,允许用户自由使用、修改和分发。 详细性:由于全球志愿者的不断努力,数据细节较为丰富,涵盖了从主要河流湖泊到小型水体的广泛范围。 数据时间2024年5月,shp格式,数据来源OpenStreetMap。 OpenStreetMap(OSM)介绍: 一个开放的、免费的、全球性的地图项目,由全球的志愿者和地图爱好者们共同创建和维护。 OSM的数据包括道路、建筑、公园、河流、湖泊等各类地理信息。由于是由众多志愿者共同编辑,OSM的数据具有很高的实时性和详细程度,特别是在一些活跃的区域,地图数据的更新速度和精度往往超过商业地图服务。 用户可以直接在OSM官网下载地图数据,数据格式主要有OSM XML和PBF等。此外,还有一些第三方网站和工具提供更加便捷的数据下载和处理服务,如Geofabrik、Overpass API等。 OSM的数据可以在各种GIS软件中使用,如QGIS、ArcGIS等。此外,还可以使用Python的OSMnx、GeoPandas等库进行编程处理,或者通过Leaflet、Mapbox等JavaScript库将OSM数据集成到web地图应用中。 OSM的所有数据都在开放许可下发布,允许用户自由使用、修改和分发。这使得OSM成为了许多公共项目、研究机构和商业公司的重要数据来源。
部门绩效考核评分表
12-11-运输车队长绩效考核表(含自动计算、等级评价)
1、文件内容:ant-javadoc-1.9.4-2.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/ant-javadoc-1.9.4-2.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装
springboot整合 freemarker方法
1、文件内容:apache-commons-codec-1.8-7.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/apache-commons-codec-1.8-7.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装
《旅游抽样调查资料》是反映入境游客在华(内地)花费和国内居民国内旅游情况的资料性年刊,分为上下两篇。 上篇为在华(内地)停留时间在3个月以内的入境游客抽样调查资料,由综合分析报告和调查分类数据两部分组成,分类数据包括:入境游客的主要特征,入境外国人、港澳台同胞的花费水平和花费构成、在境内的停留时间以及入境次数、流向和对住宿单位的选择等。 下篇为国内旅游抽样调查资料,汇集了对城镇居民和农村居民的国内旅游抽样调查结果,共分为四个部分:第一部分为综合分析报告;第二部分为国内旅游出游及花费情况;第三部分为城镇居民国内旅游抽样调查分类数据;第四部分为农村居民国内旅游抽样调查分类数据。
1、表单界面,身份证信息保存在dbf表中,供vfp应用使用,可导出为xls电子表格。 2、提供了身份证过期校验和查询功能。