Apache负载均衡 Tomcat6的集群和session的复制

系统环境:Windows XP SP3 ,jdk1.5.0_05
软件版本:apache_2.2.11-win32-x86-openssl-0.9.8i.msi apache-tomcat-6.0.16 apache-tomcat-6.0.18
备注:tomcat可以下载压缩包直接解压就可以,另外也下载整合了APR(Apache Tomcat Native library 1.1.16)
Apache和Tomcat的整合个人推荐使用AJP的方式,配置简单,而且现在tomcat官方鼓励采用这种方式呢!如果想体验mod_JK的方式,下面也有介绍。
我是在同一台机器上作的测试,因为我完成了apache的负载均衡以及tomcat6的集群和session的复制,所以需要修改到的地方可能比较多,先将配置列出如下:
一、AJP方式的配置:
1、 修改apache的httpd.conf
首先要load所需要的so文件,需要列表如下:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so

ProxyPass /images !
ProxyPass /css !
ProxyPass /js !

<Proxy balancer://cluster/>
BalancerMember ajp://localhost:8009/ route=tomcat1 loadfactor=50
BalancerMember ajp://localhost:9009/ route=tomcat2 loadfactor=50
</Proxy>

开启虚拟主机
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

httpd-vhosts.conf:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin winsky_2008@163.com
DocumentRoot "D:\www\webapps"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
ProxyRequests Off
ProxyPass / balancer://cluster/ stickysession=JSESSIONID nofailover=On
ProxyPassReverse / balancer://cluster/
#ProxyPassReverse /test balancer://cluster/ test
</VirtualHost>
二、mod_jk方式的配置
1、修改apache的httpd.conf
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "conf\workers.properties"
JkMountFile "conf\uriworkermap.properties"

JkLogFile "logs\mod_jk2.log"
JkShmFile "logs\jk.shm"
JkLogLevel info

workers.properties:
workers.java_home=D:\ jdk1.5.0_05
ps=\
worker.list= status,LBCONTROLLER


# localhost server 1
# ------------------------
worker.s1.port=8009
worker.s1.host=localhost
worker.s1.type=ajp13

# localhost server 2
# ------------------------
worker.s2.port=9009
worker.s2.host=localhost
worker.s2.type=ajp13

worker.LBCONTROLLER.type=lb
worker.retries=3
worker.LBCONTROLLER.balanced_workers=s1,s2
worker.LBCONTROLLER.sticky_session=true

worker.status.type=status

uriworkermap.properties:
/*= LBCONTROLLER
#/*.jsp= LBCONTROLLER
#/*.do= LBCONTROLLER
#/*.action= LBCONTROLLER
#/servlet/*= LBCONTROLLER

/jkstatus=status

!/*.gif= LBCONTROLLER
!/*.jpg= LBCONTROLLER
!/*.png= LBCONTROLLER
!/*.css= LBCONTROLLER
!/*.js= LBCONTROLLER
!/*.htm=DLOG4J
!/*.html=DLOG4J
开启虚拟主机
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

httpd-vhosts.conf:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin winsky_2008@163.com
DocumentRoot "D:\www\webapps"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
JkMountCopy On
</VirtualHost>

三、修改%TOMCAT_HOME%/conf/server.xml(跟使用AJP和JK方式没有关系,皆通用)
添加集群的配置:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6">
<!--
<Manager className="org.apache.catalina.ha.session.BackupManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"
mapSendOptions="6"/>
-->
<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"
address="228.0.0.4"
port="45564"
frequency="500"
dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="auto"
port="5001"
selectorTimeout="100"
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"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
<!--
<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>
四、实现session复制
第一步:
Tomcat 6.0.16
<Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat1">
<!--
<Engine name="Catalina" defaultHost="localhost">
-->
Tomcat 6.0.18
<Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat2">
<!--
<Engine name="Catalina" defaultHost="localhost">
-->

第二步:
Webapps目录下的应用程序的web.xm中必须添加
<distributable/> 此应用将与群集服务器复制Session

因为是在同一台机器上启动多个tomcat,所以修改监听的端口是必不可少的,这里将我的配置列出如下:
Tomcat 6.0.16
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" acceptCount="5000" maxThreads="2000"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
Tomcat 6.0.18
<Connector port="9080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="9443" acceptCount="5000" maxThreads="2000"/>
<Connector port="9009" protocol="AJP/1.3" redirectPort="9443" />
配置完成,先启动所有tomcat服务器,最后启动apache2.2服务器
以上为个人使用过程的总结,具体的性能没有做测试,所以没法做比较,如有疑问,可以联系QQ:735014642,进行沟通,欢迎指正~~

附件提供文档下载:关于windows下整合Apache和Tomcat的个人经验.rar

参考连接:http://lamp.linux.gov.cn/Apache/ApacheMenu/mod/mod_proxy.html
http://tomcat.apache.org/tomcat-6.0-doc/config/cluster.html
吃透 AM32 无人机电调:从源码架构到工作原理的全方位解析(附实践指南)(上) 本文深入解析了AM32电调固件的源码架构与核心模块实现。文章首先介绍了AM32电调作为开源无人机;动力心脏的重要地位,随后从硬件基础、源码目录、模块划分三个维度构建解析框架。重点剖析了系统初始化模块的时钟配置、GPIO初始化和定时器设置,以及FOC控制模块的坐标变换算法、角度估算和SVPWM生成等关键技术实现。通过逐行代码解析,揭示了电调如何将飞控指令转换为电机驱动的完整过程,为开发者理解AM32电调工作原理提供了系统性指导。 阅读详情

相关推荐

在PLC中将十六进制数据转换为浮点数(通常遵循IEEE 754标准)需要理解数据存储格式,并按以下步骤操作:

通过以上步骤,您可以在PLC中实现十六进制到浮点数的转换。T DBD20 // 将数据传送到浮点数变量(如DB1.DBD20)指数位(8位):实际指数 = 存储值 - 127(偏移量)。:必须确认PLC的存储顺序(大端或小端),否则结果错误。将两个16位寄存器合并为32位数据,需注意。尾数位(23位):隐含前导1,实际值为。:确保32位数据在寄存器中连续且对齐。符号位(1位):0表示正,1表示负。:高位寄存器在前(如西门子PLC)。:低位寄存器在前(如三菱FX系列)。,误差因截断导致)。

K11mvp的博客 4418

tomcat6 nginx 集群

集群主要有两个问题:1,负载均衡,2,session共享   准备两个tomcat  如果tomcat在同一台机器上面改掉三个端口   &lt;Server port="8005" shutdown="SHUTDOWN"&gt; &lt;Connector port="8080" protocol="HTTP/1.1"                 connectionTime...

衣旧 154

GR00TN1.7国内本地下载+模型下在+hugingface无法连接,本地模型下载

GR00TN1.7

alsj123456的博客 97

Nginx与Tomcat6集群

Nginx与Tomcat6集群Tomcat6集群配置  参考文档 http://tomcat.apache.org/tomcat-6.0-doc/  Tomcat1 /home/web/tomcat1 Server_port:8005 Conn_port:7518 Conn_AJP13_port:8009 Conn_redirectPort:8443  &lt;Engine name="Catal...

heqiyong的专栏 144

山石网科Hillstone防火墙基础上网配置_CLI命令行(最新版)

山石网科Hillstone防火墙安全网关基础上网基础网络配置_CLI命令行(最新版)

路与肥的博客 1万+

NLP实战:如何用CoNLL-2003数据集快速提升命名实体识别模型性能(附完整代码)

本文详细介绍了如何利用CoNLL-2003公开数据集,通过深度剖析数据特点、构建鲁棒的数据预处理流水线、选择合适的模型架构(如BERT-CRF)以及优化训练策略,来系统性地提升命名实体识别(NER)模型的性能。文章提供了完整的代码示例,并分享了处理数据不均衡、标签对齐等核心挑战的实战技巧,帮助读者从理论到实践全面掌握NER任务。

cola5的博客 494

Apache2.2+tomcat6集群负载匀衡

最近更新列表 1.IBM的aix中安装jdk(7月21更新)2.Linux(CentOS)中安装jdk (7月21更新)3.Linux(CentOS)安装weblogic (7月22更新)4.Aix系统中安装webLogic (7月22更新)5.IBM实体机aix中创建weblogic域 (7月23更新)6.linux中通过VNC创建weblogic域 (7月23更新)7.在RedHat 5...

zl19861225的专栏 409

Simulink智能驾驶场景探索:自动泊车系统设计与验证

自动泊车系统(APS)传感器模块:用于检测车辆周围的障碍物和其他车辆的位置。路径规划模块:根据传感器数据生成最优的泊车路径。控制器模块:根据路径规划结果生成转向角、速度等控制信号。执行器模块:根据控制器生成的信号调整车辆的方向盘、油门和刹车。在本实例中,我们将使用超声波传感器和摄像头来检测车辆周围的环境,并使用PID控制器实现自动泊车功能。通过本教程,我们介绍了如何使用 Simulink 进行自动泊车系统的仿真。背景介绍:理解自动泊车系统及其在智能驾驶中的应用。所需工具和环境。

MHD0815的博客 506

TOMCAT6配置负载均衡和集群

apache tomcat ajp cluster

dangerous_fire的专栏 7145

Allegro输出光绘文件规范

添加钻孔表的具体步骤为:1.通过屏幕右边的Visibility选项的Views列表,将Drill层打开2.将Visibility选项中的PIN和Via选项都选中,见下图所示: 参数设好之后关闭NC Drill/Parameters窗口,输出数控机床钻孔文件的命令菜单为:Manufacture=>NC=>NC Drill…,打开的窗口如下: 输出数控机床钻孔文件的具体步骤为: 上图是光绘输出的层控制窗口,还有一个窗口是输出参数的控制窗口,我们通过点击上图的第二个列表项General Parameters来

axingxiansen的博客 2808

华为面试手撕真题【字符串压缩】

华为面试手撕真题【字符串压缩】

MISAYAONE的博客 1万+

Tomcat集群Cluster实现原理剖析

     在笔者上一篇博客(http://zyycaesar.iteye.com/admin/blogs/295227)中简要介绍了如何通过简单的配置来实现tomcat集群,本文意在介绍对tomcat集群进行更深入详细的配置以满足特定需求。        对于WEB应用集群的技术实现而言,最大的难点就是如何能在集群中的多个节点之间保持数据的一致性,会话(Session)信息是这些数据中最重要的一块...

iteye_6958的博客 414

Orin 调试GMSL camera 96712手册重点

96712基础理解

乐于分享 9194

apache负载均衡和tomcat6集群和session复制

系统环境:Windows XP SP3 ,jdk1.5.0_05 软件版本:apache_2.2.11-win32-x86-openssl-0.9.8i.msi apache-tomcat-6.0.16 apache-tomcat-6.0.18 备注:tomcat可以下载压缩包直接解压就可以,另外也下载整合了APR(Apache Tomcat Native library 1.1.16)

Gavinlib的专栏 1021

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

CentOS系统下Apache负载均衡、Tomcat集群以及项目热部署配置

关于APACHE负载均衡与TOMCAT集群配置的资料网上有很多,但是几乎是一个版本一个样,而且在配置的过程中,可能是由于版本的不同,或者系统环境的不同,出现各种各样的错误,下面将我自己在虚拟机下配置的过程记录下来,由于设备不够,所以tomcat节点与apache服务器都配置在同一Centos系统下。         一、配置环境:           1、Centos 6.3  32位Linu

秋风瑟瑟 7580

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Apache2+Tomcat7集群实现

文章转载http://wiki.bsdn.org 概述 Tomcat是J2EE开发当中使用最多的应用服务器,本章就来介绍一下使用Apache2应用服务器加上Tomcat6一起实现应用集群与负载均衡。这里我们使用的Tomcat为7.0.26;Apache版本为2.2,如果您机器上没有,请到www.apache.org上下载,Tomcat7.0.26有两个,我们这里称之为tomcat1和tomc...

Donny的专栏 217

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

tomcat集群

 概述 Tomcat是J2EE开发当中使用最多的应用服务器,本章就来介绍一下使用Apache2应用服务器加上Tomcat6一起实现应用集群与负载均衡。这里我们使用的Tomcat为7.0.26;Apache版本为2.2,如果您机器上没有,请到www.apache.org上下载,Tomcat7.0.26有两个,我们这里称之为tomcat1和tomcat2,下文中如果没特指tomcat1还是to

每天进步一点点 986

tomcat集群配置-1

1.概述 Tomcat是J2EE开发当中使用最多的应用服务器,本章就来介绍一下使用Apache2应用服务器加上Tomcat6一起实现应用集群与负载均衡。这里我们使用的Tomcat为7.0.26;Apache版本为2.2,如果您机器上没有,请到www.apache.org上下载,Tomcat7.0.26有两个,我们这里称之为tomcat1和tomcat2,下文中如果没特指tomcat1还是tomc

u013673242的专栏 622

apache-tomat负载均衡和集成

apache_2.2.4+tomcat6 集群和负载均衡 名词解释: Apache:apache是web服务器,tomcat是应用服务器,是一个servlet容器,是apache的扩展。Apache和tomcat都可以作为独立的web服务器运行,但是apache不能运行java程序。Apache是普通的服务器,本身只支持html静态页面。但是可以通过插件支持php,还可以与tomcat连通...

西西里飞鱼 233

Apache负载均衡与Tomcat集群配置学习(Windows环境)(2)

搞定算法,面试字节再不怕,有需要文章中分享的这些二叉树、链表、字符串、栈和队列等等各大面试高频知识点及解析最后再分享一份终极手撕架构的大礼包(学习笔记):分布式+微服务+开源框架+性能优化本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录需要这份系统化的资料的朋友,可以点击这里获取搞定算法,面试字节再不怕,有需要文章中分享的这些二叉树、链表、字符串、栈和队列等等各大面试高频知识点及解析最后再分享一份。

2401_84690353的博客 1018

Apache2+tomcat6集群+session同步

Apache2+tomcat6集群+session同步 说明:借前人之鉴,写一篇关于tomcat集群及session同步的问题,首先介绍tomcat集群及做集群的原因和必要性;session同步的作用;各软件的安装配置及测试。 原理: Apache是httpd服务器,负责接收http请求,如何将请求分发给后台tomcat,这就需要mod_jk了,mod_jk是...

weixin_33885253的博客 133

apache2.2.21 + mod_jk1.2.32 + tomcat6.0.33 配置负载均衡

系统环境:Windows XP SP3 ,jdk1.6.0_13 软件版本:httpd-2.2.21-win32-x86-openssl-0.9.8r.msi  apache-tomcat-6.0.33   tomcat-connectors-1.2.32-windows-i386- httpd-2.2.x 我是在一台机器上作的测试,因为我完成了apache的负载均衡以及to

IT那些事儿 2326

Tomcat集群搭建超详细

Tomcat集群搭建超详细 2017年10月26日 22:48:47点化人生阅读数 13888更多 目录 TOMCAT集群 1 1 集群 1 1.1 什么是集群 1 1.2 集群的特性 1 1.3 集群的分类 1 1.4 TOMCAT集群配置的优缺点 2 1.5 APACHE+TOMCAT 2 1.6 环境说明 2 2 软件安装 3 2.1 安装说明 3 2.2 JDK...

cxu123321的博客 9307

Apache + Tomcat 负载均衡 session复制

http://snowolf.iteye.com/blog/743611 Apache 和 Tomcat原本就是一家,更是一家亲!Apache与Tomcat整合,无非是将Apache作为前端根据请求路径、端口、代理分发给多个Tomcat,以到达转发和负载均衡的目的!同时,通过Apache和Tomcat相互作用,进行粘性会话,会话拷贝构建集群!这一切的最终结果就是“云服务”!不要说Sessio

4452

Apache负载均衡Session共享Tomcat集群

准备: 1:Apache,下载后直接安装,安装完成后能够访问本地http://localhost/,代表安装完成。此次使用Apache2.2版本。 2:Tomcat,下载后直接安装,安装完成后能够访问本地http://localhost:8080,代表安装完成。此次使用Tomcat6.0版本。 3:JK,Apache/IIS 用来连接后台Tomcat的模块,支持集群和负载均衡。此次使用mod...

2227
上一篇: 计算机中数的表示
下一篇: JAVA字符集
enet_java
博客等级 码龄21年 20粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值