一、配置tomcat 多启动

1.下载免安装版 tomcat7

http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.81/bin/apache-tomcat-7.0.81-windows-x64.zip

解压tomcat7免安装版,复制三个解压tomcat文件夹

(tomcat7-1,tomcat7-2,tomcat7-3)

2. 配置环境变量

变量名=变量值

TOMCAT_HOME1 = tomcat解压路径(F:\server\tomcat7-1)

CATALINA_HOME1=%TOMCAT_HOME1%

CATALINA_BASE1=%TOMCAT_HOME1%

3.打开tomcat7-1\bin文件夹

打开 startup.bat 在最前面添加

SET JAVA_HOME =jdk安装路径(D:\ProgramFiles\Java\jdk1.8.0_144)

SET CATALINA_HOME=解压路径 (F:\server\tomcat7-1)

4.修改新的tomcat7-1中的startup.bat

把其中的CATALINA_HOME改为CATALINA_HOME1

(备注:如果配置不成功的情况下,要打开shutdown.bat在最前面添加SET JAVA_HOME =jdk安装路径(D:\ProgramFiles\Java\jdk1.8.0_144)

SET CATALINA_HOME=解压路径 (F:\server\tomcat7-1)

5.修改新的tomcat7-1中的catalina.bat

把其中的    CATALINA_HOME改为CATALINA_HOME1,

CATALINA_BASE改为CATALINA_BASE1。

6.修改tomcat7-1 conf/server.xml文件:

6.1 <Server port="8005" shutdown="SHUTDOWN">把端口改为没有是使用的端口。

6.2 <Connector port="8080" protocol="HTTP/1.1"  connectionTimeout="20000"redirectPort="8443" /> 把端口改为没有是使用的端口。

6.3<Connector port="8009" enableLookups="false"

redirectPort="8443" protocol="AJP/1.3" /> 把端口改为没有是使用的端口。

 7.点击startup.bat启动 成功!

8. tomcat7-2,tomcat7-3 重复2~6 步顺序进行即可!

(在cmd命令行执行1、netstat –ano 查看端口情况2、tasklist 查看运行程序情况3、杀掉占用你多需要端口的程序)

二、配置apache2.4

1.下载地址:https://www.apachehaus.com/cgi-bin/download.plx?dli=gUGZkaVtWQz4keZtWTHBncKVlUGR1UwFXVXFDM

2.然后打开以管理员身份打开 cmd 进入到apache解压目录的bin文件夹中,bin文件夹中的httpd.conf中的目录要更改为你解压的目录

3.接着运行 httpd.exe -k install    (卸载Apache服务:httpd -k uninstall -n apache2.4)

4. 打开conf/httpd.conf文件 在38行 Define SRVROOT "你apache解压的目录" (F:\server\Apache24)

5.运行bin文件夹中的ApacheMonitor.exe

端口号有冲突 只需在conf目录下的httpd.conf文件和httpd-vhosts.conf中更改端口号即可

(注:在配置文件中的 66行 80 改为88  224行 80 改为88)

出现缺少140.ddl 组件时 下载安装组件:

https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=48145

 

三、配置apache2.4 + tomcat7

①打开conf/httpd.conf文件,加载以下模块。

#---------------------Session start------------------------

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

LoadModule slotmem_shm_module modules/mod_slotmem_shm.so

LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so

#----------------------end---------------------

③去掉Include conf/extra/httpd-vhosts.conf的注释标记#。(有的需要,有的不需要)

④在文件末尾加反向代理

ProxyRequests off

ProxyPassReverse / balancer://tomcatcluster/

<proxy balancer://cluster>

BalancerMember ajp://127.0.0.1:81009 loadfactor=1 route=jvm1

BalancerMember ajp://127.0.0.1:92009 loadfactor=1 route=jvm2

BalancerMember ajp://127.0.0.1:93009 loadfactor=1 route=jvm3

</proxy>

#参数"loadfactor"表示后台服务器负载到由Apache发送请求的权值,

⑤修改conf/extra/httpd-vhosts.conf文件。

注释掉所有的dummy-host,添加以下内容

<VirtualHost *:80>

ServerAdmin  localhost

ServerName localhost

ServerAlias localhost

ProxyPass / balancer://cluster/ stickysession=jsessionid nofailover=On

ProxyPassReverse / balancer://cluster/

ErrorLog "logs/lbtest-error.log"

CustomLog "logs/lbtest-access.log" common

</VirtualHost>

#80 为apache 如果apache默认端口修改则这个端口号也需要修改

2.配置Tomcat

修改tomcat7-1,tomcat7-2,tomcat7-3 conf/server.xml文件

④ <Engine name="Catalina" defaultHost="localhost">在末尾加 jvmRoute="jvm1"

同时修改Tomcat2 ,Tomcat3 的这个标签为jvmRoute="jvm2",jvmRoute="jvm3"

⑤<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>改为

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster">

<Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>

</Cluster>

配置完成之后,启动两个Tomcat测试一下Tomcat是否可以正常启动

如果可以正常启动,则进行下面步骤

在webApps下面添加Test目录,添加Test.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>");

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="test.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>

创建WEB-INF目录,创建web.xml

<?xml version="1.0" encoding="utf-8"?>

<web-app xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"

version="3.0"

metadata-complete="true">

<distributable />

</web-app>

最后启动Apache2.4,在页面中输入localhost:88\test\test.jsp进行测试。

该地址的端口访问的是Apache端口

session 共享两种方式 通过修改conf/server.xml文件 中的<Cluster></Cluster>节点

1.session sticky:会话不复制

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> #注释掉

2.session replication:会话复制

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> #去掉该行注释即可实现session复制功能

Apache2.4 + Tomcat7 负载均衡配置的更多相关文章

  1. Apache2.2+tomcat7 负载均衡配置

    思路及步骤:第一步配置tomcat,第二步配置apache 服务器,第三步添加项目到tomcat中并测试 第一步配置tomcat 1,打开 第一个tomcat,conf文件夹下的server.xml ...

  2. Apache2.2+Tomcat7.0整合配置详解

    一.简单介绍 Apache.Tomcat Apache HTTP Server(简称 Apache),是 Apache 软件基金协会的一个开放源码的网页服务器,可以在 Windows.Unix.Lin ...

  3. centos6 Nginx+Tomcat负载均衡配置

    一.Nginx简介 Nginx是一个web服务器也可以用来做负载均衡及反向代理使用,目前使用最多的就是负载均衡,具体简介我就不介绍了百度一下有很多,下面直接进入安装步骤 二.Nginx安装 1.下载N ...

  4. Nginx + Tomcat Windows下的负载均衡配置

     Nginx + Tomcat Windows下的负载均衡配置 一.为什么需要对Tomcat服务器做负载均衡?    Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果超过50 ...

  5. nginx安装及负载均衡配置

    Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第二 ...

  6. Nginx负载均衡配置实例详解

    负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...

  7. Nginx 简单的负载均衡配置示例(转载)

    原文地址:Nginx 简单的负载均衡配置示例(转载) 作者:水中游于 www.s135.com 和 blog.s135.com 域名均指向 Nginx 所在的服务器IP. 用户访问http://www ...

  8. Nginx负载均衡配置实例详解(转)

    负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...

  9. Nginx做NodeJS应用负载均衡配置实例

    这篇文章主要介绍了Nginx做NodeJS应用负载均衡配置实例,本文直接给出配置实例,需要的朋友可以参考下. 负载均衡可以把用户的请求分摊到多个服务器上进行处理,从而实现了对海量用户的访问支持.负载均 ...

随机推荐

  1. 项目记事【SpringMVC-1】:后台接收前端传来的JSON,并转成对象

    背景: 最近项目中使用SpringMVC,需要从前端接收JSON格式的请求,在后端自动转成一个与JSON格式相同的对象. 由于是一个老项目,Spring的版本是3.2.7. 问题1:POST or G ...

  2. 多重外键关系在java中的处理方案

    // 0){ var ul = li.getElementsByTagName("ul")[0]; ul.style.display = "none"; var ...

  3. Ubuntu 14.04下Redis安装报错:“You need tcl 8.5 or newer in order to run the Redis test”问题解决

    Redis简介: Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工 ...

  4. MySQl数据库常用的DOS命令

    MySQl数据库常用的DOS命令.. 这是第一部分.. 数据库的连接信息:jdbc:mysql://localhost:3306/shxtcom.mysql.jdbc.Driver /*jdbc:sq ...

  5. DHCP解析

    DHCP解析... ------------------------ DHCP的工作原理: ====================== ======================DHCP动态主机地 ...

  6. 手把手封装数据层之DButil数据库连接的封装

    最近这段时间一直在用SSM框架做增删改查,突然想把以前还不会用框架的时候,综合百度和各种资料结合API文档抄袭而来的数据层的封装分享给大家.这边先封装一个DButil. 我这个封装就是烂大街的那种,没 ...

  7. hdu 6107--Typesetting(倍增)

    题目链接 Problem Description Yellowstar is writing an article that contains N words and 1 picture, and t ...

  8. [知了堂学习笔记]_JSON数据操作第1讲(初识JSON)

    一.认识JSON 什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式..它基于 ECMAScript (w3c制定的js规 ...

  9. java HashSet改用

    写的一个Student类如下: 上面是直接使用的HashSet集合,系统会把new Student()  当做地址不用来出来,所以结果如下: 然后我在Student类中重写了hashCode()和eq ...

  10. python2 urllib2抓取51job网的招聘数据

    #coding=utf-8 __author__ = "carry" import sys reload(sys) sys.setdefaultencoding('utf-8') ...