实现tomcat集群:
环境说明
1、安装Apache httpd-2.2.21-win32-x86-no_ssl.msi
2、apache-tomcat-7.0.54.zip(复制两份)
配置说明:
1、保证两个tomcat不冲突,修改其中的一个就可以了
2、修改其中tomcatA(我这样为tomcat命名)的server.xml配置文件
<Server port="8006" shutdown="SHUTDOWN"> (port修改成了8006 不冲突就行)
<Connector port="8180" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8543" /> (port和redirectPort 不与另外tomcat中配置文件起冲突)
<Connector port="8010" protocol="AJP/1.3" redirectPort="8543" /> (同理)
<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1"> (Engine节点 新增jvmRoute属性 jvm1 随便定义 另外tomcat配置文件中 Engine也需要新增JvmRoute属性如:jvmRoute="jvm2")
tomcat中的配置就已经完成了。接下来就修改安装Apache中的了,
1、找到安装目录如:C:\Program Files\Apache Software Foundation\Apache2.2\conf 中 httpd.conf 文件
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#Include conf/extra/httpd-vhosts.conf
将这些的注释去掉
在最后加上
ProxyRequests Off
<proxy balancer://cluster>
BalancerMember ajp://127.0.0.1:8009 loadfactor=1 route=jvm2
BalancerMember ajp://127.0.0.1:8010 loadfactor=1 route=jvm1
</proxy>
8009 是引用 Connector节点中的端口号
route=jvm2 就是Engine节点中的jvmRoute属性了
2、在找到C:\Program Files\Apache Software Foundation\Apache2.2\conf\extra 中的httpd-vhosts.conf文件
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.think-net.local
DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/docs/dummy-host.think-net.local"
ServerName dummy-host.think-net.local
ServerAlias www.dummy-host.think-net.local
ErrorLog "logs/dummy-host.think-net.local-error.log"
CustomLog "logs/dummy-host.think-net.local-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.think-net.local
DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/docs/dummy-host2.think-net.local"
ServerName dummy-host2.think-net.local
ErrorLog "logs/dummy-host2.think-net.local-error.log"
CustomLog "logs/dummy-host2.think-net.local-access.log" common
</VirtualHost>
将这段代码注释掉或者删除
在下面加上
<VirtualHost *:80>
ServerAdmin 604837356@qq.com
ServerName localhost
ServerAlias localhost
ProxyPass / balancer://cluster/
ProxyPassReverse / balancer://cluster/
ErrorLog "logs/dummy-host2.sm.com-error.log"
CustomLog "logs/dummy-host2.sm.com-access.log" common
</VirtualHost>
tomcat集群的配置就已经完成了,下面就是测试了。
编写一个测试的index.jsp 把它放到两个tomcat中去 启动两个tomcat
在浏览器中 http://localhost/tomcatColony/index.jsp 刷新就可以看到效果了。
index.jsp代码
<%@ page contentType="text/html; charset=GBK" %> <%@ page import="java.util.*" %>
<html>
<head>
<title>Cluster App Test</title>
</head>
<body>
Server Info: <% out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"<br>");%>
<%out.println("<br> ID " + session.getId()+"<br>");
// 如果有新的 Session 属性设置
String dataName = request.getParameter("dataName");
if (dataName != null && dataName.length() > 0) {
String dataValue = request.getParameter("dataValue");
session.setAttribute(dataName, dataValue);
}
out.print("<b>Session 列表</b>");
Enumeration e = session.getAttributeNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = session.getAttribute(name).toString();
out.println( name + " = " + value+"<br>");
System.out.println( name + " = " + value);
} %>
<form action="index.jsp" method="POST">
名称:<input type=text size=20 name="dataName"> <br>
值:<input type=text size=20 name="dataValue"> <br>
<input type=submit>
</form>
</body>
</html>
相关推荐
【标题】:“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 服务器...
- **Session 复制**:为了实现Session共享,需要配置Tomcat集群间的Session复制机制。通常可以通过配置Tomcat的`Cluster`或使用第三方组件如Memcached来实现。 #### 五、总结 通过本文的详细介绍,我们可以了解到...
在本场景中,我们关注的是“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操作系统有一定的了解。熟悉基本的命令行操作,如文件管理、用户权限、网络设置等,这...
Apache+Tomcat集群配置是一个常见的高可用性和负载均衡解决方案,用于提高Web应用程序的性能和可靠性。以下是详细的配置步骤和相关知识点: 1. **Apache安装**: - Apache HTTP Server需要安装在80端口上,作为...
### Tomcat集群部署方案知识点详解 #### 一、集群概念及特性 **1.1 什么是集群** 集群是由多台独立的计算机通过网络连接组成的集合体,这些计算机共同协作完成任务,对外表现为单一的服务实体。集群的主要目的是...