- 浏览: 70938 次
- 性别:
- 来自: 武汉
最新评论
-
spring_springmvc:
spring mvc demo教程源代码下载,地址:http: ...
springmvc -
mrhuangok:
文章条理清晰,帮了我大忙。
springmvc -
kunsyliu:
...
get加密 -
JeffreyJia:
为什么使用JMS 就必须使用 MDB呢?没有必要吧?
基于Spring打造简单高效通用的异步任务处理系统
一、 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地址。
发表评论
-
jcl与jul、log4j1、log4j2、logback的集成原理
2017-12-01 15:59 533jcl与jul、log4j1、log4j2、logbac ... -
slf4j与jul、log4j1、log4j2、logback的集成原理
2017-12-01 15:52 427收藏 jd ... -
预编译分析
2017-11-29 10:26 654一.背景: 用Mybatis+my ... -
预编译
2017-11-29 09:57 710PreparedStatement 在说PreparedS ... -
Spring Boot应用的后台运行配置
2017-11-21 14:26 540Spring Boot应用的后台运行配置 酱油一篇,整 ... -
编码
2017-11-21 14:25 523几种常见的编码格式 为什么要编码 不知道大家有没有想过一 ... -
Spring Boot应用的后台运行配置
2017-11-29 09:58 737Spring Boot应用的后台运行配置 酱油一篇, ... -
spring boot 注解
2017-11-01 10:58 347@EnableAutoConfiguration和@Spr ... -
支付话题
2015-09-09 11:45 1450本文档适用人员:交易领域的产品研发人员 提纲: 银 ... -
深入分析 Java 中的中文编码问题
2014-12-19 10:21 602在 IBM Bluemix 云平台上开发并部署您的下一个应 ... -
hashmap死循环
2014-11-24 10:45 755疫苗:Java HashMap的死循环 在淘宝内 ... -
jquery
2014-02-07 09:03 765当你准备使用jQuery,我强烈建议你遵循下面这些指南: ... -
减轻页面压力
2014-01-26 09:04 611网站快速加载,是提供 ... -
linux 命令
2014-01-23 09:20 402一.linux快捷键 Ctrl+C : 终止当前命令 C ... -
mina
2013-10-15 12:49 1362<!--StartFragment --> ... -
spring 线程池
2013-10-12 14:35 684Spring 线程池使用 Spring ... -
性能监控
2013-07-08 10:34 793spring,真是一个好东西;性能,真是个让人头疼又不 ... -
java ftp
2013-06-24 11:05 880在项目中使用到FTP功能,于是采用类似Spring的各种 ... -
json
2013-06-21 14:01 721JSON小结【json-lib】 j ... -
基于Spring打造简单高效通用的异步任务处理系统
2013-05-21 14:24 3928背景 随着应用系统功 ...
相关推荐
【集群技术概述】 集群技术是一种将多个独立的计算机节点通过高速网络互连,形成一个统一、协调工作的系统,以提供高可用性和高性能的服务。这种技术有效地解决了单台服务器的可用性和性能瓶颈问题,使得企业能够以...
在SpringCloud框架中,部署Redis集群是实现高可用、数据持久化和分布式缓存的关键步骤。Redis是一款高性能的键值数据库,广泛应用于缓存、消息队列等多种场景。SpringCloud通过集成Spring Data Redis模块,使得在...
两台服务器集群巧搭建 本篇文章主要介绍了服务器集群的概念、特点和实现方法。服务器集群是指一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。服务器集群可以提高可用性...
SQL Server 2016 + AlwaysOn 无域集群搭建指南 本文档将指导您如何搭建 SQL Server 2016 + AlwaysOn 无域集群,实现高可用性数据库集群。整个过程可以分为五个步骤:环境准备、安装故障转移集群、配置集群仲裁、...
集群已配置好,点击start.bat即可开启,...#是否可以设置为集群 cluster-enabled yes #集群节点文件的位置 cluster-config-file D:\InstallDir\redis6\bin\6380\nodes.conf #节点失联时间 cluster-node-timeout 15000
《KingbaseES V8R2 集群部署手册》是针对金仓数据库V8版本的一个详尽指导文档,旨在帮助用户成功部署和管理KingbaseES的集群环境。KingbaseES,全称为Kingbase Enterprise Server,是中国自主研发的一款高性能、高...
本文将详细解析Kettle的两种集群模式:固定数量子服务器的集群和动态集群。 ### 固定数量子服务器的集群 **使用条件**:适用于需要处理大量数据的场景,且有确定数量的子服务器可以持续在线运行。如果在处理过程...
根据提供的文件内容,以下是对《ContextCapture Center集群设置教程》的知识点详细解释: ***C软件概述: CCC(ContextCapture Center)是一款可用于集群建模的数据处理软件。它允许用户将多台计算机组成一个计算...
智能无人集群系统作为当今尖端科技的代表之一,是集成了人工智能、自动控制、网络通信以及传感技术等诸多高科技领域的复杂系统。中国电子技术标准化研究院(CESI)发布的《智能无人集群系统发展白皮书-2021版》重点...
在Windows系统上搭建ActiveMQ集群是一项关键的任务,它涉及到分布式消息传递系统的设计和优化。ActiveMQ是Apache软件基金会开发的一款开源消息代理,它遵循Java Message Service (JMS) 规范,提供高可靠的消息传递...
tongweb集群安装手册 本文档旨在指导Windows平台下安装tongweb集群的人员,涵盖了Apache配置、TONGWEB集群配置、AJP通道配置等知识点。 1. Apache配置 为了实现Apache与应用服务器之间的负载均衡,我们需要使用...
CC 集群处理详解及错误盘查 CC 集群处理是指将多台计算机连接在一起,共同完成一项任务的处理方式。它可以提高任务的处理速度和效率,减少单台计算机的工作负载。 集群处理的概念: * 什么是集群?:集群是指将多...
本资料包重点讲解如何使用kubeadm来初始化一个高可用的Kubernetes 1.20.4集群,同时将etcd集群独立设置在Kubernetes集群之外,以增强系统的稳定性和可管理性。 **一、etcd集群** etcd是CoreOS开发的一个分布式的、...
在IT行业中,服务器集群是一种常见的高可用性和高性能计算解决方案,用于提供连续服务并处理大量并发请求。本篇文章将深入探讨标题“服务器集群方案汇总图集”所涵盖的关键知识点,包括服务器集群、集群方案、网络...
最近要在公司里搭建一个hadoop测试集群,于是采用docker来快速部署hadoop集群。 0. 写在前面 网上也已经有很多教程了,但是其中都有不少坑,在此记录一下自己安装的过程。 目标:使用docker搭建一个一主两从三台机器...
在使用redis集群时,发现过期key始终监听不到。网上也没有现成的解决方案。于是想,既然不能监听集群,那我可以建立多个redis连接,分别对每个redis的key过期进行监听。以上做法可能不尽人意,目前也没找到好的解决...
根据给定的文件内容,下面是关于AgiSoft PhotoScan集群部署使用指导的知识点: 1. 集群部署目的:AgiSoft PhotoScan集群部署是为了利用多台计算机的处理能力,提升大规模数据处理的效率。通过集群部署,可以将照片...
本次实验的目的主要是搭建Redis Cluster和TwemProxy Redis两种集群,分别对其进行性能测试,测试出集群性能的拐点,找出性能的瓶颈有哪些,并对两套集群进行比较,以便于在不同业务场景下择优选择。
在构建高可用性解决方案时,Windows Server 2016 故障转移集群、SQL Server 2016 Always On 及 IIS 故障转移是关键组件,它们共同提供了在硬件或软件故障时的数据安全性和业务连续性。以下是关于这些技术的详细说明...
二进制部署k8s高可用集群(二进制-V1.20) 基于提供的文件信息,本文将对二进制部署k8s高可用集群进行详细的知识点总结。 1. 生产环境部署 K8s 集群的两种方式 在生产环境中,部署 K8s 集群有两种方式:一种是...