集群(其实谈不上,不过是多部署了几个tomcat服务器,用jk/jk2负责负载平衡,而且关于负载平衡我还不大了解,只是我不清楚该怎么称谓,暂且用这个怪吓人的名字)的结构:3台机器,机器A部署了Win2000pro+Tomcat(jvmRoute:tomcat1,以下如同)和apache,机器B、C(操作系统都是WinXp)分别各部署了一个Tomcat服务器(tomcat2,tomcat3)
1、 mod_jk2作为连接器插件的服务器整合
服务器环境:Windows2000 profession + apache_2.0.54 + tomcat_4.1.18
连接器插件:mod_jk2.so (version 2.0.4终结版 apache组织计划在apache2.1/2.2版本中将实现该连接器)
整合过程:
a) 下载apache和mod_jk2(在apache的官方网站上即可 ,以下连接仅供参考:
apache:http://httpd.apache.org/download.cgi
mod_jk2:http://apache.justdn.org/jakarta/tomcat-connectors/jk2/binaries/win32/
)
b) 安装apache_2.0.54,安装目录假设为C: \apache2(以下用APACHE_HOME代表);将下载的连接器压缩包解压后找到mod_jk2.so文件,将其拷贝至APACHE_HOME\modules目录下
c) 配置jk2:
修改APACHE_HOME\conf\目录下的httpd.conf文件配置如下:
#在文件中LoadModule部分增加以下代码
LoadModule jk2_module modules/mod_jk2.so #加载插件
在APACHE_HOME\conf\目录下建立workers2.properties文件配置如下: # Define the communication channel
[channel.socket:10.0.0.33:8009]
info=Ajp13 forwarding over socket #配置第一个服务器
tomcatId=tomcat1 #必须和tomcat服务其中server.xml中对Engine元素中的#jvmRoute的设置一样,即在server.xml中的设置如下:
#<Engine name="Standalone" defaultHost="localhost" #debug="0" jvmRoute="tomcat1">
#这个名字必须唯一,保证集群中的tomcat服务器不能同 #名
debug=0
lb_factor=1 #负载平衡因子,数字越大请求被分配的几率越高
# Define the communication channel
[channel.socket:10.0.0.16:8009]
info=Ajp13 forwarding over socket #配置第二个服务器
tomcatId=tomcat2
debug=0
lb_factor=1
# Define the communication channel
[channel.socket:10.0.0.31:8009]
info=Ajp13 forwarding over socket #配置第三个服务器
tomcatId=tomcat3
debug=0
lb_factor=1
[status:]
info=Status worker, displays runtime information.
# Map the Tomcat examples webapp to the Web server uri space
#用于显示各个服务器的接收的请求状态(表述可能不准)
[uri:/jkstatus.jsp]
info=Display status information and checks the config file for changes.
group=status:
# Map the Tomcat examples webapp to the Web server uri space
#映射tomcat中的应用即Context,由于我们的应用是放在tomcat的webapps/root目录 #下的,所以 uri设置为 /*,如果为应用 B,且部署在webapps/B,则uri设置为/B/*
[uri:/*]
info=Map the whole webapp
debug=0
d) 分别启动tomcat服务器和apache服务器(注意:必须保证每台Tomcat服务器都在Engine中设置了正确的jvmRoute,这样负载平衡才有作用),然后就可以试试你的部署了,你可以在apache服务器所在机器上通过http://localhost/jkstatus.jsp 来查看你部署的tomcat的接收请求的情况及负载情况(这里我忽略了各个服务器的端口设置及其他内容的设置)
2、 mod_jk作为连接器插件的服务器整合
服务器环境:Windows2000 profession + apache_2.0.54 + tomcat_4.1.18
连接器插件:mod_jk-1.2.10-apache-2.0.53.so (version 1.2.10)
整合过程:
a) 下载apache和mod_jk(在apache的官方网站上即可 ,以下连接仅供参考:
apache:http://httpd.apache.org/download.cgi
mod_jk2:http://apache.justdn.org/jakarta/tomcat-connectors/jk/binaries/win32/jk-1.2.10/
)
b) 安装apache_2.0.54,安装目录假设为C: \apache2(以下用APACHE_HOME代表);将下载的连接器压缩包解压后找到mod_jk-1.2.10-apache-2.0.53.so文件,将其拷贝至APACHE_HOME\modules目录下
c) 配置jk2:
修改APACHE_HOME\conf\目录下的httpd.conf文件配置如下:
#在文件中LoadModule部分增加以下代码
LoadModule jk_module modules/mod_jk-1.2.10-apache-2.0.53.so #加载插件
JkWorkersFile conf/workers.properties #指定jk配置文件位 #置
JkLogFile logs/mod_jk-1.2.10-apache-2.0.53.log #指定jk日志的位置
JkLogLevel debug #日志记录级别
JkMount /* tomcat #“/*”表示用于tomca #处理的应用 ;“tomcat”是出现在#workers.properties文件中worker.list后面 #出现的值
JkMount /jkstatus.jsp jkstatus #用于显示各个服务器的接收的请求状态 #(表述可能不准)
在APACHE_HOME\conf\目录下建立workers.properties文件配置如下: workers.tomcat_home=E:\Tomcat 4.1 #让mod_jk模块知道Tomcat
workers.java_home=D:\j2sdk1.4.2 #让mod_jk模块知道j2sdk
ps=\ #指定文件路径分割符
worker.list=tomcat,jkstatus #指定处理web应用的tomcat服务器列表,可以是实 #际的tomcat服务器,也可以是负责负载平衡的“虚”#服务器(它是实际服务器组的管理者)
worker.tomcat.method=R #指定jk转发请求的方式,T表示根据网络特性选择提 #供服务的tomcat服务器,R表示根据请求数量和负载因#子转发,缺省为R(理解可能有误)
worker.tomcat1.port=8009 #工作端口,若没占用则不用修改
worker.tomcat1.host=localhost #Tomcat服务器的地址
worker.tomcat1.type=ajp13 #类型
worker.tomcat1.lbfactor=1 #负载平衡因数
worker.tomcat2.port=8009 #工作端口,若没占用则不用修改
worker.tomcat2.host=10.0.0.16 #Tomcat服务器的地址
worker.tomcat2.type=ajp13 #类型
worker.tomcat2.lbfactor=2 #负载平衡因数
worker.tomcat3.port=8009 #工作端口,若没占用则不用修改
worker.tomcat3.host=10.0.0.31 #Tomcat服务器的地址
worker.tomcat3.type=ajp13 #类型
worker.tomcat3.lbfactor=2 #负载平衡因数
worker.tomcat.type=lb #表明这个worker负责负载平衡
worker.tomcat.balance_workers=tomcat1,tomcat2,tomcat3 # lb类型的worker管理的实际#部署的tomcat服务器, 它的 #名称必须与tomcat服务器中的#Server.xml中Engine元素的#jvmRoute设置必须相同,并且#在balance_workers中出现的这#些值不能出现在worker.list 中
worker.jkstatus.type=status #表明这个worker负责显示集群状态
d) 分别启动tomcat服务器和apache服务器(注意:必须保证每台Tomcat服务器都在Engine中设置了正确的jvmRoute,这样负载平衡才有作用),然后就可以试试你的部署了,你可以在apache服务器所在机器上通过http://localhost/jkstatus.jsp 来查看你部署的tomcat的接收请求的情况及负载情况(这里我忽略了各个服务器的端口设置及其他内容的设置)
分享到:
相关推荐
【标题】:“Tomcat集群配置” 在Web应用的高可用性和可扩展性需求日益增长的今天,Tomcat集群成为了一个重要的解决方案。Tomcat集群能够通过负载均衡和故障转移来提高服务的稳定性和性能。以下是对Tomcat集群配置...
当我们需要处理高并发、负载均衡等需求时,单个Tomcat服务器可能无法满足,这时就需要进行Tomcat集群部署。下面将详细介绍Tomcat集群部署的相关知识点。 1. **集群的概念**: 集群是一种通过多台服务器协同工作来...
本资料包包含了“tomcat集群配置”的程序及文档,提供了现成的例子,帮助我们理解和实践Tomcat集群的搭建与管理。 首先,我们需要了解Tomcat集群的基本概念。集群是指多个Tomcat实例协同工作,它们共享相同的会话...
【标题】:Tomcat集群-负载平衡 在Java Web应用开发中,Apache Tomcat作为一款广泛应用的开源Servlet容器,常被用于部署和运行Java EE应用。然而,单一的Tomcat服务器可能无法满足高并发、高可用性和高可扩展性的...
Apache + Tomcat 集群配置 Apache + Tomcat 集群配置是指将 Apache 服务器与 Tomcat 服务器集成,以提高服务器的性能和可扩展性。本文将详细介绍如何配置 Apache + Tomcat 集群,包括安装 Apache 和 Tomcat 服务器...
在本场景中,我们关注的是“tomcat集群jar包”,这通常涉及到在多个Tomcat实例间分配工作负载以实现高可用性和可扩展性的技术。 集群的概念在分布式系统中非常重要,特别是对于像Tomcat这样的Web服务器。当单个...
在IT领域,特别是Web应用服务器的管理与优化中,Tomcat集群实现Session复制是一个关键的技术点,它确保了高可用性和负载均衡,特别是在处理大量并发请求的场景下。本文将深入探讨这一主题,涵盖其原理、配置方法以及...
### Linux配置Tomcat集群知识点详解 #### 一、概述与目标 在Linux环境下配置Tomcat集群,主要目的是构建一个能够实现水平扩展、具备高可用性、支持负载均衡以及错误恢复能力的服务架构。通过集群的方式,可以提高...
### Apache Tomcat 集群与负载均衡 #### 1. 集群相关简介 ##### 1.1 集群 集群是一组通过高速网络互相连接的计算机,它们作为一个整体协同工作,对外呈现出单一系统的特性。客户端与集群交互时,会感觉像在与一个...
【Tomcat集群优化详细配置】 在IT行业中,服务器性能优化是一项关键任务,特别是在高并发、大规模用户访问的场景下。Tomcat,作为广泛使用的Java应用服务器,常常需要通过集群部署来提升系统的可用性和可伸缩性。...
【Java企业级电商项目架构演进之路 Tomcat集群与Redis分布式】 这门课程是针对Java开发者设计的,旨在提升他们的企业级项目架构能力,特别是聚焦于Tomcat集群和Redis分布式缓存的应用。课程内容丰富,适合希望晋升...
【Tomcat集群搭建详解】 Tomcat集群是一种将多个Tomcat服务器组织起来,共同提供服务的架构,以实现更高的可用性和可扩展性。集群的主要目的是在负载均衡和错误恢复的基础上,确保服务的连续性和性能。 **1. 集群...
在分布式系统中,Tomcat集群是一种常见的架构模式,用于提高应用程序的可用性和可扩展性。然而,当多个Tomcat实例组成一个集群时,session(用户会话)共享成为一个挑战,因为每个实例都有自己的内存空间,无法直接...
【Tomcat集群部署方案】 Apache Tomcat集群部署是提高Web应用程序可伸缩性和高可用性的常见策略。在集群环境中,多个Tomcat实例协同工作,共同处理来自客户端的请求,从而实现负载均衡和故障转移。本方案将详细介绍...
当我们谈论“tomcat集群配置文件”时,我们指的是将多个Tomcat实例组织成一个集群,以提高应用程序的可用性和可伸缩性。在集群环境中,负载均衡、故障转移和资源共享是关键特性。 首先,要配置Tomcat集群,你需要...
本篇内容将详细探讨如何在Linux环境中配置Tomcat集群,以提高系统的可用性和性能。 一、Linux基础 在开始配置之前,需要对Linux操作系统有一定的了解。熟悉基本的命令行操作,如文件管理、用户权限、网络设置等,这...
### Tomcat集群部署方案知识点详解 #### 一、集群概念及特性 **1.1 什么是集群** 集群是由多台独立的计算机通过网络连接组成的集合体,这些计算机共同协作完成任务,对外表现为单一的服务实体。集群的主要目的是...