第一部分——下载

1.1: 百度搜索apache httpd关键字,第一个链接既是官方下载地址。如果这一步不会,此篇文章不适合你阅读,请自行停止。

1.2:进入官网http://httpd.apache.org/,点击左边菜单download链接进入下载页,选择稳定版最新版httpd2.4.26

 1.3 点击windows下载链接

 1.4 点击ApacheHaus链接

1.5 根据自己电脑位数选择下载包,我选择的是windows 64位的下载包

1.6 下载完成后名字为httpd-2.4.26-x64-vc14.zip,解压后,

进入httpd-2.4.26-x64-vc14\Apache24\bin目录,看到了启动集群程序的httpd.exe,

和httpd-2.4.26-x64-vc14\Apache24\conf目录下,看到了集群配置文件httpd.conf

至此,下载完成。

第二部分——启动

 2.1 编辑C:\Windows\System32\drivers\etc\hosts文件,用文本编辑器打开hosts,添加新的两行IP映射:

127.0.0.1   www.joyce.com
localhost    www.joyce.com

 2.2 httpd-2.4.26-x64-vc14\Apache24\conf\httpd.conf 修改如下:

修改SRVROOT变量为实际路径:

修改集群监听IP及端口: ServerName  www.joyce.com:80

修改log日志文件名: ErrorLog  "logs/httpd-error.log"  (非常重要!启动中除了80端口被占用错误不能被记录其中,其它所有错误都记录其中!尤其是httpd.exe启动窗口一闪而过问题。起一个与众不同的名字,方便在不知道log日志具体位置的时候,全局查找。 如果发现80端口被占用,请参考文章: http://www.cnblogs.com/gsls200808/p/4506301.html  )

2.3 选择集群策略。放开以下XXX.so注释,方便添加集群tomcat

 ##############################################################################
# 以下3种负载均衡策略,只开放一种即可
##############################################################################
#按照繁忙程度,总是给活跃请求数最少的服务器
LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so
#按照请求次数
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
#按照流量均衡
LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
 ##############################################################################
# 以下是代理相关及ajp协议相关的功能模块,使session共享
##############################################################################
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so

2.4 双击D:\jiqun\Apache24\bin\httpd.exe,打开一个窗口并且不关闭,则集群服务器启动成功。

鼠标会一直闪啊闪,并且黑色窗口不关闭。

2.5 验证启动成功,在浏览器地址栏输入www.joyce.com展示如下:

第三部分  tomcat集群例子

3.1 准备两个集群tomcat。我这里用的是apache-tomcat2-8.0.44,由于是集群本机运行,需要不同的tomcat分别设置不同端口,确保其正常运行:

准备两个tomcat进行集群测试。

3.2 修改集群tomcat端口及jvmRoute

第一个集群tomcat: 修改apache-tomcat1-8.0.44\conf\server.xml端口以及配置:

修改Server port为8001:                      <Server port="8001" shutdown="SHUTDOWN">

修改HTTP端口为8002:                        <Connector port="8002" protocol="HTTP/1.1"

修改AJP集群用到的端口为50001:       <Connector port="50001" protocol="AJP/1.3" redirectPort="8443" />

增加集群用到的jvmRoute="tomcat1":                    <Engine name="Catalina" defaultHost="localhost"  jvmRoute="tomcat1">

第二个集群tomcat: 修改apache-tomcat2-8.0.44\conf\server.xml端口以及配置:

修改Server port为8003:                      <Server port="8003" shutdown="SHUTDOWN">

修改HTTP端口为8004:                        <Connector port="8004" protocol="HTTP/1.1"

修改AJP集群用到的端口为50002:       <Connector port="50002" protocol="AJP/1.3" redirectPort="8443" />

增加集群用到的jvmRoute="tomcat2":                    <Engine name="Catalina" defaultHost="localhost"  jvmRoute="tomcat2">

3.3 修改集群配置文件httpd.conf。修改D:\jiqun\Apache24\conf\httpd.conf,在最末尾处添加:

 ProxyPass /distributed balancer://cluster01/ stickysession=JSESSIONID
ProxyPassReverse / balancer://cluster01/
<proxy balancer://cluster01>
BalancerMember ajp://www.joyce.com:50001/distributed loadfactor=1 route=tomcat1
BalancerMember ajp://www.joyce.com:50002/distributed loadfactor=1 route=tomcat2
</proxy>

3.4 集群tomcat session共享

当我们需要多个tomcat集群,并且tomcat之间共享session时,需要做如下配置:

1,在tomcat配置文件server.xml中以下这行代码放开注释:

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

2,要在要将web.xml文件<web-app>元素的最后加上: <distributable/>   两个地方的web.xml,一个是应用程序的WEB-INF\web.xml,另一个是tomcat/conf/web.xml(不知道有没有用,反正我加上了)

3.5 添加分布式应用程序。在两个tomcat下模拟增加application应用程序:

在apache-tomcat1-8.0.44\webapps和apache-tomcat2-8.0.44\webapps两个目录下新建myapp文件夹,代替我们的发布应用,两个myapp文件夹下新建index.jsp内容为:

<html>
<head>
<title>helloapp</title>
</head>
<body>
<h2>tomcat2</h2> <br/> <br/>
<% System.out.println("call index.jsp"); %>
SessionID: <%=session.getId() %>
</body>
</html>

各自取名tomcat1和tomcat2

3.6 验证集群以及session共享

tomcat2的session是 *AA39F

tomcat1的session是 *AA39F ,说明两个tomcat  session共享成功,虽然sessionid 的 .tomcat1后缀表明该session来自服务器tomcat1,但你提交的写入session中的属性值仍然可以读出。

验证成功!集群部署成功!session共享成功!

集群项目管理文档截图:

windows下apache httpd2.4.26集群完整搭建例子:下载、启动、tomcat集群例子的更多相关文章

  1. Windows下apache+tomcat负载均衡

    Windows下apache+tomcat负载均衡 网上已经有很多的资料,但是很多都比较零碎,需要整合一起才能搭建出理想的负载均衡,正好前段时间搭建了windows与linux下的负载均衡,在此记录, ...

  2. windows下apache+https环境配置

    windows下apache+https环境配置 转 https://www.cnblogs.com/sandaizi/p/7519370.html 1.修改配置文件conf/httpd.conf,去 ...

  3. Windows下Apache+mod_python+Django配置

    Windows下Apache+mod_python+Django配置 Apache 首先要安装Apache,我安装的版本是2.2.*: Python python肯定是要安装的,我安装的版本是2.5的 ...

  4. windows下 apache 二级域名相关配置

    小编今天给大家总结下 windows 下 apache的二级域名的相关配置 利用.htaccess将域名绑定到子目录 下面就利用本地127.0.0.1进行测试 我们这里以 www.jobs.com 为 ...

  5. Apache Windows下Apache安装步骤

    1.apache官网下载Apache HTTP Server服务器 我相信有些朋友刚用apache服务器时,都希望从官网上下载,而面对着官网上众多的项目和镜像以及目录,也许有点茫然.下面是具体步骤: ...

  6. Windows下Apache应用环境塔建安全设置(目录权限设置)

    目的:为Apache,php配置受限制的用户权限.保护系统安全.需要的朋友可以参考下. 环境配置情况: apache安装目录:d:\www-s\apache php目录:d:\www-s\php5 m ...

  7. windows下apache + mod_wsgi + python部署flask接口服务

    windows下apache + mod_wsgi + python部署flask接口服务 用python3安装虚拟环境 为啥要装虚拟环境? 原因1:安装虚拟环境是为了使项目的环境和全局环境隔离开,在 ...

  8. windows下 apache 二级域名相关配置 【转】

    转至: http://www.th7.cn/Program/php/201306/141305.shtml 今天给大家总结下 windows 下 apache的二级域名的相关配置 下面就利用本地127 ...

  9. hadoop集群环境搭建之安装配置hadoop集群

    在安装hadoop集群之前,需要先进行zookeeper的安装,请参照hadoop集群环境搭建之zookeeper集群的安装部署 1 将hadoop安装包解压到 /itcast/  (如果没有这个目录 ...

随机推荐

  1. 『TensorFlow』流程控制

    『PyTorch』第六弹_最小二乘法对比PyTorch和TensorFlow TensorFlow 控制流程操作 TensorFlow 提供了几个操作和类,您可以使用它们来控制操作的执行并向图中添加条 ...

  2. VNC错误修复⽅方法

    VNC错误修复方法 VNC错误描述 vnc viewer开启后弹窗提示 Could not connect to session bus: Failed to connect to socket /t ...

  3. mybatis的jdbcType和javaType、oracle,MySQL的对应类型

    JdbcType介绍 数据库列字段都是有类型的,不同的数据库有不同的类型.为了表示这些数据类型,Java源码是采用枚举来定义的: public enum JDBCType implements SQL ...

  4. 2010-10-08在浏览器中兼容+jQuery3

    一.实现背景图片铺满(兼容各种浏览器) <script type="text/javascript"> $(document).ready(function() { $ ...

  5. sticky footer

    html: <div class="detail"> <div class="detail-wrapper"> <div clas ...

  6. icon moon追加字体

    一.初始自定义字体为icon moon1@font-face { font-family: 'icomoon1'; src: url('fonts/icomoon1.eot?9fhn24'); src ...

  7. 指导手册02:伪分布式安装Hadoop(ubuntuLinux)

    指导手册02:伪分布式安装Hadoop(ubuntuLinux)   Part 1:安装及配置虚拟机 1.安装Linux. 1.安装Ubuntu1604 64位系统 2.设置语言,能输入中文 3.创建 ...

  8. Java语法基础学习DaySixteen(多线程)

    一.多线程的创建 1.作用 程序需要同时执行两个或多个任务时需要多线程. 程序需要实现需要等待的任务时,如用户输入.文件读写操作.网络操作.搜索等,需要多线程. 需要一些后台运行的程序时,需要多线程. ...

  9. 如何使用HackRF做一个简单的IMSI捕获器

    关于IMSI IMSI为国际用户识别码(International Mobile Subscriber Identity)的缩写,是用于区分蜂窝网络中不同用户的,在所在蜂窝网络中不重复的识别码.IMS ...

  10. TP5 强制下载PDF

    为什么叫强制下载  因为你点击你的PDF文件路劲的话   浏览器是默认字网页上打开,而不是下载 我们需要做的就是 修改header头信息  使其变为下载状态 //下载PDF public functi ...