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 安装 ...
随机推荐
- 地址解析协议ARP,网络层协议IP、ICMP协议
分析所用软件下载:Wireshark-win32-1.10.2.exe 阅读导览 1. 分析并且应用ARP协议 2.分析IP协议 3.分析ICMP协议 1.分析arp报文的格式与内容 (1)ping ...
- Java springmvc 统一异常处理的方案
前言:为什么要统一异常处理?经常在项目中需要统一处理异常,将异常封装转给前端.也有时需要在项目中统一处理异常后,记录异常日志,做一下统一处理. Springmvc 异常统一处理的方式有三种. 一.使用 ...
- css3 3d正反面翻转
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 查看Linux 、Nginx、 MySQL 、 PHP 版本的方法
参考:查看Linux .Apache . MySQL . PHP 版本的方法 1.查看Linux版本: uname -a: more /etc/issue; cat /proc/version; 2. ...
- js获取url中参数名也参数值
要撮利用js获取url中参数名也参数值这个不多见了,但我今天需要这样操作,下面我来给大家介绍一下具体的实例方法. 在已知参数名的情况下,获取参数值,使用正则表达式能很容易做到. js的实现方法如下 ...
- Android 蓝牙开发之搜索、配对、连接、通信大全
蓝牙( Bluetooth®):是一种无线技术标准,可实现固定设备.移动设备和楼宇个人域网之间的短距离数据 交换(使用2.4-2.485GHz的ISM波段的UHF无线电波).蓝牙设备最 ...
- RxJava重温基础
RxJava是什么 a library for composing asynchronous and event-based programs using observable sequences f ...
- 在Fragment里面调用getActivity()报null
看友盟的错误日志发现又出现了NullPointerException,然后去看代码,发现只有是上下文有空的可能,但是因为以前已经发生过这种情况所以上下文我都是在创建Fragment对象的时候从Acti ...
- redis 管道技术 pipeline 简介
redis数据库的主要瓶颈是网络速度,其次是内存与cpu.在应用允许的情况下,优先使用pipeline批量操作.pipeline批量发出请求/一次性获取响应:不是发出多个请求,每个请求都阻塞等待响应, ...
- linux 用户配置文件及其相关目录
用户配置文件及其相关目录: /etc/passwd 用户信息文件/etc/shadow 影子文件/etc/group 组信息文件/etc/gshadow 组密码文件邮箱目录模板目录 /etc/pass ...