`
baggioback
  • 浏览: 70938 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

集群

 
阅读更多

 一、 Apache、Tomcat集群和负载均衡所需资源软件(附下载地址):

  a) apache_2.0.55-win32-x86-no_ssl.msi;

  b) apache-tomcat-5.5.17.rar

  c) mod_jk-apache-2.0.55.so

  如下图所示:附下载地址:http://download.csdn.net/detail/crazyiter_com/4178657

  二、 Apache和Tomcat安装及注意事项:

  负载均衡,就是apache将客户请求均衡的分给tomcat1,tomcat2....去处理

  1、Apache安装路径为:E:\ide\apache\Apache2(具体可以根据自己的盘符而定)

  2、Tomcat放置位置和名称注意:

  注意:apache文件夹和tomcat1、tomcat2放置在同一目录下,及:E:\ide下。

  三、 Apache的配置及注意事项:

  1、在apache安装目录下conf目录中找到http.conf,在文件最后加上下面一句话就可以了,如下图:

include "E:\ide\apache\Apache2\conf\mod_jk.conf"

  2、将mod_jk-apache-2.0.55.so文件放入如下文件夹中:

  E:\ide\apache\Apache2\modules

  3、http.conf同目录下新建mod_jk.conf文件,内容如下:  

#加载mod_jk Module
LoadModule jk_module modules/mod_jk-apache-2.0.55.so

#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties

#指定请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器

JkMount /*.jsp controller

  4、在http.conf同目录下新建 workers.properties文件,内容如下:  

worker.list = controller,tomcat1,tomcat2  #server 列表

#========tomcat1========

worker.tomcat1.port=8009         #ajp13端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost  #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1   #server的加权比重,值越高,分得的请求越多

#========tomcat2========

worker.tomcat2.port=9009       #ajp13端口号,在tomcat下server.xml配置,默认8009
worker.tomcat2.host=localhost  #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1   #server的加权比重,值越高,分得的请求越多
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2   #指定分担请求的tomcat
worker.controller.sticky_session=1

  四、 Tomcat的配置及注意事项:

  1、 修改tomcat2配置文件server.xml:

  如下图:

  五、 编写一个测试jsp页面:

  1、建立一个目录test.里面新建一个test.jsp,内容为:

<% 
   System.out.println("===========================");
%>

 

  把test放到tomcat1,tomcat2的webapps下,如图:

  2、 启动apache,tomcat1,tomcat2,进行测试:

  通过http://localhost/test/test.jsp 访问,查看tomcat1的窗口,可以看到打印了一行"=========="

  再刷新一次,tomcat2也打印了一条,再刷新,可以看到请求会被tomcat1,tomcat2轮流处理,实现了负载均衡

  如图:

  六、 Tomcat集群:

  注:只配置负载均衡还不行,还要session复制,也就是说其中任何一个tomcat的添加的session,是要同步复制到其它tomcat,集群内的tomcat都有相同的session。

  1、 去掉tomcat1和tomcat2中的注释:

  2、 将tomcat中的4001端口修改成4002:

  3、 增加jvmRoute,tomcat1和tomcat2都需要:

  注意:tomcat1下jvmRoute=”tomcat1”, tomcat2下jvmRoute=”tomcat3”。

  4、 修改测试项目test:

  修改test.jsp,内容如下:  

<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.util.*" %>


Server Info:
<%
out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"
");%>
<%
  out.println("
ID " + session.getId()+"
");

  // 如果有新的 Session 属性设置
  String dataName = request.getParameter("dataName");
  if (dataName != null && dataName.length() > 0) {
     String dataValue = request.getParameter("dataValue");
     session.setAttribute(dataName, dataValue);
  }

  out.print("Session列表");

  Enumeration e = session.getAttributeNames();
  while (e.hasMoreElements()) {
     String name = (String)e.nextElement();
     String value = session.getAttribute(name).toString();
     out.println( name + " = " + value+"
");
         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>

  然后在test新建WEB-INF目录,WEB-INF下新建web.xml,内容如下

<A href="http://down-admin.chinaz.com/zczamzk/NS" ="<a href= NS = "<web-app http: java.sun.com xml ns j2ee? xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
       <display-name>TomcatDemo</display-name>
       
</web-app>

  注意:在你的应用的web.xml加入 即可

  ok,将test复制到tomcat1,tomcat2的webapps下,重启apache,tomcat1,tomcat2,

  输入网址http://localhost/test/test.jsp

  新建一个名称为 crazyiter ,值为 jiangge的session,提交查询,新开一个IE窗口,再提交查询,如图,可以看到,两个tomcat是负载均衡,并且session同步的

  说明:在没有联网的情况下,按照上面的配置启动tomcat要报错,如下图:

  据我分析,应该是和配置的IP这些有关,断网的情况的使用ipconfig没有IPv4的ip地址。

分享到:
评论

相关推荐

    集群分类数据库集群数据库集群

    【集群技术概述】 集群技术是一种将多个独立的计算机节点通过高速网络互连,形成一个统一、协调工作的系统,以提供高可用性和高性能的服务。这种技术有效地解决了单台服务器的可用性和性能瓶颈问题,使得企业能够以...

    springcloud部署redis集群

    在SpringCloud框架中,部署Redis集群是实现高可用、数据持久化和分布式缓存的关键步骤。Redis是一款高性能的键值数据库,广泛应用于缓存、消息队列等多种场景。SpringCloud通过集成Spring Data Redis模块,使得在...

    两台服务器集群巧搭建

    两台服务器集群巧搭建 本篇文章主要介绍了服务器集群的概念、特点和实现方法。服务器集群是指一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。服务器集群可以提高可用性...

    SQL Server2016+AlwaysON无域集群.docx

    SQL Server 2016 + AlwaysOn 无域集群搭建指南 本文档将指导您如何搭建 SQL Server 2016 + AlwaysOn 无域集群,实现高可用性数据库集群。整个过程可以分为五个步骤:环境准备、安装故障转移集群、配置集群仲裁、...

    windows环境下配置redis6集群

    集群已配置好,点击start.bat即可开启,...#是否可以设置为集群 cluster-enabled yes #集群节点文件的位置 cluster-config-file D:\InstallDir\redis6\bin\6380\nodes.conf #节点失联时间 cluster-node-timeout 15000

    KingbaseES V8R2 集群部署手册

    《KingbaseES V8R2 集群部署手册》是针对金仓数据库V8版本的一个详尽指导文档,旨在帮助用户成功部署和管理KingbaseES的集群环境。KingbaseES,全称为Kingbase Enterprise Server,是中国自主研发的一款高性能、高...

    kettle集群及动态集群设置

    本文将详细解析Kettle的两种集群模式:固定数量子服务器的集群和动态集群。 ### 固定数量子服务器的集群 **使用条件**:适用于需要处理大量数据的场景,且有确定数量的子服务器可以持续在线运行。如果在处理过程...

    ContextCapture Center集群设置教程.pdf

    根据提供的文件内容,以下是对《ContextCapture Center集群设置教程》的知识点详细解释: ***C软件概述: CCC(ContextCapture Center)是一款可用于集群建模的数据处理软件。它允许用户将多台计算机组成一个计算...

    智能无人集群系统发展白皮书-CESI(2021).pdf

    智能无人集群系统作为当今尖端科技的代表之一,是集成了人工智能、自动控制、网络通信以及传感技术等诸多高科技领域的复杂系统。中国电子技术标准化研究院(CESI)发布的《智能无人集群系统发展白皮书-2021版》重点...

    window系统搭建activeMQ集群和操作步骤

    在Windows系统上搭建ActiveMQ集群是一项关键的任务,它涉及到分布式消息传递系统的设计和优化。ActiveMQ是Apache软件基金会开发的一款开源消息代理,它遵循Java Message Service (JMS) 规范,提供高可靠的消息传递...

    tongweb集群安装手册

    tongweb集群安装手册 本文档旨在指导Windows平台下安装tongweb集群的人员,涵盖了Apache配置、TONGWEB集群配置、AJP通道配置等知识点。 1. Apache配置 为了实现Apache与应用服务器之间的负载均衡,我们需要使用...

    CC集群处理详解及错误盘查.docx

    CC 集群处理详解及错误盘查 CC 集群处理是指将多台计算机连接在一起,共同完成一项任务的处理方式。它可以提高任务的处理速度和效率,减少单台计算机的工作负载。 集群处理的概念: * 什么是集群?:集群是指将多...

    kubeadm初始化高可用k8s1.20.4集群-etcd集群独立在k8s集群外详细笔记资料包

    本资料包重点讲解如何使用kubeadm来初始化一个高可用的Kubernetes 1.20.4集群,同时将etcd集群独立设置在Kubernetes集群之外,以增强系统的稳定性和可管理性。 **一、etcd集群** etcd是CoreOS开发的一个分布式的、...

    服务器集群方案汇总图集

    在IT行业中,服务器集群是一种常见的高可用性和高性能计算解决方案,用于提供连续服务并处理大量并发请求。本篇文章将深入探讨标题“服务器集群方案汇总图集”所涵盖的关键知识点,包括服务器集群、集群方案、网络...

    使用docker部署hadoop集群的详细教程

    最近要在公司里搭建一个hadoop测试集群,于是采用docker来快速部署hadoop集群。 0. 写在前面 网上也已经有很多教程了,但是其中都有不少坑,在此记录一下自己安装的过程。 目标:使用docker搭建一个一主两从三台机器...

    Redis集群下过期key监听的实现代码

    在使用redis集群时,发现过期key始终监听不到。网上也没有现成的解决方案。于是想,既然不能监听集群,那我可以建立多个redis连接,分别对每个redis的key过期进行监听。以上做法可能不尽人意,目前也没找到好的解决...

    AgiSoft PhotoScan集群部署使用指导

    根据给定的文件内容,下面是关于AgiSoft PhotoScan集群部署使用指导的知识点: 1. 集群部署目的:AgiSoft PhotoScan集群部署是为了利用多台计算机的处理能力,提升大规模数据处理的效率。通过集群部署,可以将照片...

    Redis集群性能测试分析

    本次实验的目的主要是搭建Redis Cluster和TwemProxy Redis两种集群,分别对其进行性能测试,测试出集群性能的拐点,找出性能的瓶颈有哪些,并对两套集群进行比较,以便于在不同业务场景下择优选择。

    Windows2016故障转移集群+SqlServer2016always on+ISS故障转移.docx

    在构建高可用性解决方案时,Windows Server 2016 故障转移集群、SQL Server 2016 Always On 及 IIS 故障转移是关键组件,它们共同提供了在硬件或软件故障时的数据安全性和业务连续性。以下是关于这些技术的详细说明...

    二进制部署k8s高可用集群(二进制-V1.20).docx

    二进制部署k8s高可用集群(二进制-V1.20) 基于提供的文件信息,本文将对二进制部署k8s高可用集群进行详细的知识点总结。 1. 生产环境部署 K8s 集群的两种方式 在生产环境中,部署 K8s 集群有两种方式:一种是...

Global site tag (gtag.js) - Google Analytics