tomcat6 集群配置
1. 概要
web容器在做集群配置时,有3点需要注意:
1.1. 负载均衡配置;
1.2. session共享;
1.3. 若做的是单机集群(多个tomcat安装在同一台机器上),需要注意端口冲突问题。
2. 负载均衡
在本案例中是使用Apache来做的,下边用到的mod模块和Apache版本需要兼容才行。文中所使用的软件,会在文章底部附上下载链接。
2.1. 在apache安装目录的conf目录下,修改http.conf配置文件,在任意某一行加入:
Include conf/mod_jk.conf
修改Apache监听端口(在文件的第46行左右):
Listen
2.2. 在conf目录下新建文件mod_jk.conf,写入如下内容:
#加载mod_jk Module 把mod_jk-1.2.-httpd-2.2..so放到相应的目录中
LoadModule jk_module modules/mod_jk-1.2.-httpd-2.2..so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.properties里指定的负载分配控制器
JkMount /*.jsp controller
JkMount /*.action controller
其中,mod_jk-1.2.28-httpd-2.2.3.so文件更具自己实际添加的模块文件名来写。
2.3. 在conf目录下新建文件workers.properties,写入如下内容:
worker.list=controller,tomcat1,tomcat2 #tomcat1
worker.tomcat1.port= #ajp13端口号在tomcat下server.xml配置,默认8009 默认与HTTP通信的协议
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13 #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.lbfactor = #server的加权比重,值越高,分得的请求越多 #tomcat2
worker.tomcat2.port=
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = #========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2 #指定分担请求的tomcat
worker.controller.sticky_session=
其中tomcat上ajp13协议通信端口需要根据具体的设置区修改(ajp13协议在这里就是Apache与tomcat之间的通信协议)。
2.4. tomcat上的一些端口配置(conf/server.xml)
tomcat的关闭端口:默认是8005,若同一台机器上配置了多个tomcat,这里必须要修改:
<Server port="" shutdown="SHUTDOWN">
tomcat的服务端口:默认是8080,若同一台机器上配置了多个tomcat,这里必须要修改:
<Connector port="" protocol="HTTP/1.1"
connectionTimeout=""
redirectPort="" />
tomcat上的AJP13协议通信端口:默认是8009,这里的端口配置需要和上边文件workers.properties中的AJP13协议端口配置相对应,若同一台机器上配置了多个tomcat,这里必须要修改:
<Connector port="" protocol="AJP/1.3" redirectPort="" />
以上都配置好后,负载均衡已经配置好了,可以实现集群功能,但是session无法共享。
3. Session共享
3.1. 在Tomcat中启用标签:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
上述标签在conf/server.xml中被注释,取消注释即可。
3.2. 在web项目中的web.xml中加入:
<distributable/>
则这个项目就支持集群了。
到此,配置完毕。
在测试项目,如果没有配置session,则会发现点击“GO”跳转后,显示用户名为null。配置后,就可以正常显示了。
下载链接: http://pan.baidu.com/s/1mgLq8Dq
tomcat6 集群配置的更多相关文章
- Linux+Apache+Tomcat集群配置
参考: http://blog.csdn.net/bluishglc/article/details/6867358# http://andashu.blog.51cto.com/8673810/13 ...
- (转)Apache+Tomcat集群配置
本文Apache+Tomcat集群配置 基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apache是ht ...
- 基于redis的cas集群配置(转)
1.cas ticket统一存储 做cas集群首先需要将ticket拿出来,做统一存储,以便每个节点访问到的数据一致.官方提供基于memcached的方案,由于项目需要,需要做计入redis,根据官方 ...
- 基于redis的cas集群配置
1.cas ticket统一存储 做cas集群首先需要将ticket拿出来,做统一存储,以便每个节点访问到的数据一致.官方提供基于memcached的方案,由于项目需要,需要做计入redis,根据官方 ...
- apache + tomcat 负载均衡分布式集群配置
Tomcat集群配置学习篇-----分布式应用 现目前基于javaWeb开发的应用系统已经比比皆是,尤其是电子商务网站,要想网站发展壮大,那么必然就得能够承受住庞大的网站访问量:大家知道如果服务器访问 ...
- 1.Apache+Tomcat负载均衡+集群配置
1.本文Apache+Tomcat集群配置 基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apache是 ...
- Apache负载均衡与Tomcat集群配置学习(Windows环境)
本文主要参考自http://www.iteye.com/topic/985404?dhcc,经由实际操作配置操并记录而成. 由于最近的一个Java开发项目用到了Tomcat中间件作为web服务器,刚开 ...
- Ubuntu 14.04中Elasticsearch集群配置
Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...
- Redis 3.0 Cluster集群配置
Redis 3.0 Cluster集群配置 安装环境依赖 安装gcc:yum install gcc 安装zlib:yum install zib 安装ruby:yum install ruby 安装 ...
随机推荐
- springcloud-断路器hystrix
Netflix的创造了一个调用的库 Hystrix 实现了断路器.在微服务架构中,通常有多层服务调用. 底层服务出现故障可能导致用户级联故障.当调用特定服务达到一定阈值时(Hystrix中的默认值为5 ...
- C# 使用/配置Log4Net
1.首先在项目中添加Nuget程序包... 2.然后在NuGet窗体中搜索Log4Net,然后点击安装<安装过程可能会持续几分钟,请耐心等待> 3.在项目中添加一个Config文件,如已有 ...
- HTML5的audio在手机网页上无法自动加载/播放音乐,能否实现该功能?
在IOS中第一次调用play方法播放音频会被阻止,必须得等用户有交互动作,比如touchstart,click后才能正常调用,在微信中可以通过监听WeixinJSBridgeReady事件来提前播放一 ...
- hdu 1043 八数码问题
Eight Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- 山东第四届省赛C题: A^X mod P
http://acm.sdibt.edu.cn/JudgeOnline/problem.php?id=3232 Problem C:A^X mod P Time Limit: 5 Sec Memor ...
- WEB前端常用JavaScript代码整理
文章目录 html代码用JS动态加载进页面 JS判断用户访问的是PC还是mobile或者微信浏览器 判断浏览器的简单有效方法 点击某个div区域之外,隐藏该div 如何在手机上禁止浏览器的网页滚动 改 ...
- 【PyQt5 学习记录】008:改变窗口样式之二
super(MainWindow, self).__init__(parent, flags=Qt.Widget) 首先需要关闭窗口的默认样式,以方便定时想要的样式: self.setWindowFl ...
- WDCP上传SSL证书
1.在线申请SSL证书 2.网站管理>SSL证书上传 3.将key文件直接上传,cert文件内容复制到crt文件中,再上传 4.开启https 注意:同一个域名下解析的若干域名,只能走主域名的证 ...
- 行内元素和块级元素的具体区别是什么?inline-block是什么?(面试题目)
一,行内元素与块级元素的区别: 1.行内元素与块级元素直观上的区别二.行内元素与块级元素的三个区别 行内元素会在一条直线上排列(默认宽度只与内容有关),都是同一行的,水平方向排列. 块级元素各占据一行 ...
- button的OnClickListener的三种实现方法
onclick事件的定义方法,分为三种,分别为在xml中进行指定方法:在Actitivy中new出一个OnClickListenner():实现OnClickListener接口三种方式. 代码分别如 ...