1、打开apache的配置文件httpd.conf,打开如下项

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 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
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
2、apache的负载均衡的三种部署方式:
 
(1)、轮询均衡策略
打开httpd.conf,文件尾部加上如下代码:
#告诉apache使用反向代理
ProxyRequests Off
#配置工作在集群中的节点列表
<Proxy balancer://mycluster>
BalancerMember http://www.site1.com
BalancerMember http://www.site2.com
</Proxy>
# ProxyPass是配置虚拟服务器的命令
# /表示发送web请求的URL前缀
# balancer表示要配置负载均衡
# mycluster表示负载均衡名
# 必须以/结尾
ProxyPass /site balancer://mycluster/

虚拟主机的配置如下:

<VirtualHost _default_:80>
DocumentRoot "D:/wwwroot"
ServerName localhost
ErrorLog "logs/error.log"
CustomLog "logs/access.log" common
</VirtualHost> <VirtualHost *:80>
DocumentRoot D:/wwwroot/site1
ServerName www.site1.com
</VirtualHost> <VirtualHost *:80>
DocumentRoot D:/wwwroot/site2
ServerName www.site2.com
</VirtualHost>
配置好后,我在浏览器中访问
http://localhost/site/

浏览器上会循环反复的显示site1和site2。(*在两个虚拟主机下创建index.html,分别写入site1和site2用于测试)

 
(2)、按权重分配均衡策略
给 BalancerMember 加上 loadfactor 参数即可,取值在1-100。
#告诉apache使用反向代理
ProxyRequests Off
#配置工作在集群中的节点列表
<Proxy balancer://mycluster>
BalancerMember http://www.site1.com loadfactor=4
BalancerMember http://www.site2.com loadfactor=1
</Proxy>
# ProxyPass是配置虚拟服务器的命令
# /表示发送web请求的URL前缀
# balancer表示要配置负载均衡
# mycluster表示负载均衡名
# 必须以/结尾
ProxyPass /site balancer://mycluster/

虚拟主机的配置如上,这里就不拷贝了。

配置好后重启apache,然后访问上面的
http://localhost/site/

可以很明显的看到,前面四次是访问的site1站,后面一次访问的是site2。

这样就可以配置不同的权重了。
 
(3)、负载分配算法
负载均衡会尽量让各个服务器接受的请求次数满足预设的比例。如果要改变算法,可以使用 lbmethod 属性。
lbmethod可能的取值有: 
lbmethod=byrequests 按照请求次数均衡(默认) 
lbmethod=bytraffic 按照流量均衡 
lbmethod=bybusyness 按照繁忙程度均衡(总是分配给活跃请求数最少的服务器) 
#告诉apache使用反向代理
ProxyRequests Off
#配置工作在集群中的节点列表
<Proxy balancer://mycluster>
BalancerMember http://www.site1.com loadfactor=4
BalancerMember http://www.site2.com loadfactor=1
</Proxy>
# ProxyPass是配置虚拟服务器的命令
# /表示发送web请求的URL前缀
# balancer表示要配置负载均衡
# mycluster表示负载均衡名
# 必须以/结尾
ProxyPass /site balancer://mycluster/
# 按照流量均衡
ProxySet lbmethod=bytraffic
(4)、热备份
ProxyRequests Off
<Proxy balancer://mycluster>
BalancerMember http://www.site1.com
BalancerMember http://www.site2.com status=+H
</Proxy>
ProxyPass /site balancer://mycluster/
请求总是流向site1,一旦site1挂掉, apache会检测到错误并把请求分流给site2。apache会每隔几分钟检测一下site1的状况,如果site1恢复,就继续使用site1。

win 下 apache 实现负载均衡的更多相关文章

  1. Windows下apache+tomcat负载均衡

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

  2. Apache+Tomcat负载均衡问题集锦

    之前在windows 环境下搭建了下apache+tomcat负载均衡(不会的能够參考之前的文档,文档对于linux和windows都适用),一帆风顺.没有出现不论什么问题.今天尝试着在linux下搭 ...

  3. 【高可用HA】Apache (4) —— Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_jk

    Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_jk httpd版本: httpd-2.4.17 jk版本: tomcat-connectors-1.2.41 参考 ...

  4. 【高可用HA】Apache (3) —— Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_proxy

    Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_proxy httpd版本: httpd-2.4.17 参考来源: Apache (1) -- Mac下安装Apac ...

  5. 介绍一下再Apache下的Tomcat负载均衡的一些使用问题

    在负载均衡技术中,硬件设备是比较昂贵的,对于负载均衡的学习者如果不是在企业中应用或者是学员中学习,很少有机会能碰到实际操作的训练.(http://xz.8682222.com)所以,很多朋友都会选择软 ...

  6. Linux平台上搭建apache+tomcat负载均衡集群

    传统的Java Web项目是通过tomcat来运行和发布的.但在实际的企业应用环境中,采用单一的tomcat来维持项目的运行是不现实的.tomcat 处理能力低,效率低,承受并发小(1000左右).当 ...

  7. 关于Apache做负载均衡

    Tomcat+apache配置负载均衡系统笔记 在Apache   conf目录下的httpd.conf文件添加以下文字 #---------------------start------------ ...

  8. 1.Apache+Tomcat负载均衡+集群配置

    1.本文Apache+Tomcat集群配置 基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apache是 ...

  9. 微软Azure 经典模式下创建内部负载均衡(ILB)

    微软Azure 经典模式下创建内部负载均衡(ILB) 使用之前一定要注意自己的Azure的模式,老版的为cloud service模式,新版为ARM模式(资源组模式) 本文适用于cloud servi ...

随机推荐

  1. ie下 iframe在页面中显示白色背景 如何去掉的问题

    ie下:

  2. react 中state与props

    react 中state与props 1.state与props props是只读属性,只有在组件被实例化的时候可以赋值,之后的任何时候都无法改变该值.如果试图修改该值时,控制台会报错 only re ...

  3. WebLogic 任意文件上传 远程代码执行漏洞 (CVE-2018-2894)------->>>任意文件上传检测POC

    前言: Oracle官方发布了7月份的关键补丁更新CPU(Critical Patch Update),其中针对可造成远程代码执行的高危漏洞 CVE-2018-2894 进行修复: http://ww ...

  4. api 1.1构架篇

    首先让其自动加载??? 在YiiBase.php里面 改写autoload方法:     /**     * Class autoload loader.     * This method is p ...

  5. apo 简单参考

    参考: https://www.cnblogs.com/Geyoung/p/6927905.html @Aspect @Component public class TimeAspect { //通过 ...

  6. HTML5 Canvas ( 文字的书写和样式控制 ) font, fillText, strokeText

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. leetcode7

    public class Solution { public int Reverse(int x) { ; ) { fuhao = -; } try { x = Math.Abs(x); } catc ...

  8. static 和 global

    global global关键字如果用在function内部,则说明这个function内用的这个变量是全局的,全局变量就是在整个页面里都能起作用.例如 $conf = 1; function con ...

  9. python之model模块和包的介绍

    一,模块的概念:常见场景:一个模块就是一个包含了一组功能的Python文件,比如spam.py,模块名为spam,可以通过import spam使用 在Python中,模块的使用方式都是一样的,但其实 ...

  10. 使用JS获取当前地理位置方法汇总

    使用JS获取当前地理位置方法汇总 投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2014-12-18我要评论 这篇文章主要介绍了使用JS获取当前地理位置方法汇总,需要的朋友可以参考下 ...