`

apache+tomcat+session(JK实现方式)

阅读更多
测试的软件版本为:
apache:2.2
tomcat:5.5
jk:mod_jk-1.2.30-httpd-2.2.3.so

1.在httpd.conf底部加上
LoadModule jk_module  modules/mod_jk.so#加载JK模块
JkWorkersFile conf/workers.properties#tomcat工作配置
JkLogFile logs/mod_jk.log#jk工作日志
JkMount /*.jsp controller#url是.jsp结束的交给tomcat处理

2.在conf目录新建workers.properties文件,添加内容worker.list=controller,t1,t2
#========tomcat1========  
worker.t1.port=8009         #ajp13 端口号,在tomcat下server.xml配  置,默认8009 
worker.t1.host=localhost  #tomcat的主机地址,如不为本机,请填写ip地址  
worker.t1.type=ajp13  
worker.t1.lbfactor = 1   #server的加权比重,值越高,分得的请求越多    
#========tomcat2========  
worker.t2.port=8010       #ajp13 端口号,在tomcat下server.xml配置,  
worker.t2.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址  
worker.t2.type=ajp13  
worker.t2.lbfactor = 1   #server的加权比重,值越高,分得的请求越多  
#========controller,负载均衡控制器========  
worker.controller.type=lb  
worker.controller.balanced_workers=t1,t2   #指定分担请求的tomcat  
worker.controller.sticky_session=false

3.修改tomcat1的server.xml配置
找到<Engine name="Catalina" defaultHost="localhost">后修改为
<Engine name="Catalina" defaultHost="localhost" jvmRoute="t1">
把Cluster的注解注销掉,这里主要是为了tomcat的session同步

4.修改tomcat2的server.xml配置
找到<Connector port="8009" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" /> 后修改8009为8010
找到<Engine name="Catalina" defaultHost="localhost">后修改为
<Engine name="Catalina" defaultHost="localhost" jvmRoute="t2">
把Cluster 的注解注销掉,修改tcpListenPort 端口号为4002,这里主要是为了tomcat的session同步

5.在tomcat1和tomcat2的server.xml中添加项目
<Context docBase="D:/eclipse/workspace/lb/WebRoot" distributable="true" path="/xxx"/>
注意两个tomcat中的path必须一致,不然会报错(Context manager doesn't exist).只有path一致,两个tomcat才能同步session

6.注意事项:
6.1  你的所有会话属性值必须实现java.io.Serializable (就是需要同步的bean必须要实现这个接口)
6.2  在你的web项目的web.xml中加入 <distributable/>  或者在tomcat 的service.xml的项目配置中加入distributable="true" 例如:<Context docBase="D:/eclipse/workspace/lb/WebRoot" distributable="true" path="/xxx"/>
6.3  如果两个tomcat在不同的物理机器上(不同的IP),必须保证时间一致,可以通过网络时间服务(NTP)同步操作系统的时间
6.4 jk2版本已经被废除。
6.5  tomcat5默认的session复制是现实了JVM内存中复制,在JVM内存中复制SESSION状态,使用tomcat5安装带的SimpleTcpCluster 和 SimpleTcpClusterManager 类.
分享到:
评论

相关推荐

    Apache+Tomcat+JK 实现集群负载均衡文档

    Apache+Tomcat+JK 实现集群负载均衡是一种常见的Web服务器和应用服务器的部署方式,它能够提高系统的可用性和响应速度,实现服务的高并发处理。本文将详细介绍如何配置这一环境。 首先,我们需要准备以下软件: 1. ...

    apache + tomcat 集群+session复制解决方案

    Apache 使用 mod_jk 模块(也称作 JK)与 Tomcat 连接,JK 负责处理 Apache 和 Tomcat 间的通信,包括请求转发和 Session 信息同步。 - **JK 介绍**:JK 是一个开源的 Apache 模块,它实现了 AJP (Apache JServ ...

    Apache+Tomcat服务器集群配置详细步骤

    为了应对这一挑战,通常采用Apache+Tomcat服务器集群的方式。这种方式不仅能够提升系统的响应速度和服务质量,还能够在一定程度上降低对单个服务器硬件的要求,从而有效降低成本。本文将详细介绍如何在一机双Tomcat...

    apache+tomcat集群配置

    本文将详细介绍如何配置 Apache + Tomcat 集群,包括安装 Apache 和 Tomcat 服务器、配置 mod_jk 模块、配置 Apache 和 Tomcat 服务器、配置负载均衡控制器等。 一、安装 Apache 服务器 首先,需要安装 Apache ...

    Apache+JK+Tomcat搭建负载均衡

    Apache+JK+Tomcat搭建负载均衡是一种常见的高可用性和性能优化策略,主要目的是分散网络流量,提高服务的稳定性和响应速度。这个方案特别适合大型网站或应用,可以有效防止单点故障,提升用户体验。 首先,负载均衡...

    apache+tomcat配置信息 JK比较实用

    总之,Apache+Tomcat的集成利用JK模块可以实现高效的动静分离和负载均衡,为Java Web应用提供稳定且高性能的服务。理解并熟练掌握这一配置过程,对于IT从业者尤其是系统管理员来说至关重要,能够提升他们解决复杂Web...

    一台xp机器实现apache+tomcat session复制.docx

    【Apache + Tomcat Session 复制】:在一台运行Windows XP的计算机上,要实现Apache HTTP Server和Tomcat的负载均衡以及Session复制,通常需要使用Apache的mod_jk模块。这个过程涉及到Apache、Tomcat的配置,以及mod...

    Linux中Apache+Tomcat+JK实现负载均衡和群集的完整过程

    在Linux环境中,使用Apache、Tomcat和JK模块实现负载均衡和群集是一项常见的高可用性架构设计,它能够有效地分发网络流量,提高系统的可扩展性和稳定性。Apache作为前端Web服务器,负责接收用户请求并根据配置策略将...

    Apache+Tomcat+JK配置负载均衡

    Apache+Tomcat+JK配置负载均衡是Web服务器与应用服务器集群的一种常见组合,用于实现高可用性和高并发处理能力。Apache作为前端服务器,通过JK模块(mod_jk)与后端的Tomcat应用服务器进行通信,将HTTP请求分发到多...

    Apache+Tomcat集群

    - 需要Apache的JK模块(mod_jk)来实现与Tomcat的连接。将mod_jk-apache-2.0.55.so模块放到Apache的modules目录下。 - 在Apache的配置文件httpd.conf中,通过`LoadModule`指令加载jk_module,并通过`JkWorkersFile...

    Apache2.2+tomcat7+jk+jdk1.6

    本配置"Apache2.2+tomcat7+jk+jdk1.6"旨在实现一个稳定且可靠的环境,特别关注于session的共享与管理,以解决多服务器间的session一致性问题。 Apache2.2是Apache HTTP Server的第2.2版本,提供了强大的静态内容...

    apache+tomcat负载

    Apache+jk+Tomcat集群的工作流程大致如下: 1. 用户向Apache服务器发送请求。 2. Apache服务器通过mod_jk模块检查请求类型。 3. 如果请求是静态资源,Apache直接返回响应。 4. 如果请求是动态内容(如以".do"结尾的...

    Apache+tomcat集群环境配置

    以下是对"Apache+mod_jk+Tomcat集群环境配置"的详细解析。 **1. Apache与Tomcat集群的优势** - **负载均衡**:通过将请求分发到多个Tomcat实例,可以有效提高系统处理能力,防止单一节点过载。 - **高可用性**:当...

    Apache+Tomcat集群和负载均衡及Session绑定

    【Apache+Tomcat 集群与负载均衡及Session绑定】是将多个Apache和Tomcat服务器配置成一个集群,以实现更高的服务可扩展性和可用性。集群的基本思想是通过将工作负载分散到多个服务器,避免单点故障,提高系统的整体...

Global site tag (gtag.js) - Google Analytics