mod_proxy 反向代理

 

 

mod_proxy 负载均衡原理

 

 

反向代理服务器收到请求后 会自动将请求分发到某一个 BalancerMember 上  可通过 loadfactor 权值调配分发比例

loadfactor  默认值为 1   可设置 1 - 100  值越到分发比例越大 



 

开启 mod_proxy 模块

 

mod_proxy.so     mod_proxy_http.so     mod_proxy_balancer.so 

 

 

 

 

配置如下:     放在你配置虚拟主机的 <VirtualHost> 中即可


    <Proxy balancer://mycluster>  
        BalancerMember http://183.61.89.84/ loadfactor=3  
        BalancerMember http://61.135.169.121/ loadfactor=7  status=+H
        ProxySet lbmethod=byrequests
    </Proxy>  
    
    ProxyRequests Off  
    ProxyPass / balancer://mycluster/ stickysession=JSESSIONID nofailover=Off  
    ProxyPassReverse / balancer://mycluster/ 
    
    
    
    

 

配置说明    
    
    
        lbmethod表示:负载载均衡策略
        
        lbmethod=byrequests     按照请求次数均衡(默认) 
        lbmethod=bytraffic      按照流量均衡 
        lbmethod=bybusyness     按照繁忙程度均衡(总是分配给活跃请求数最少的服务器)
        
        ProxyRequests:         表示正向代理 使用反向代理时 需要关掉正向代理 否则反向代理会很慢  设置为 Off
        
        ProxyPass:             所有的请求都会重定向到 balancer://mycluster/ 处理 balancer 是内置负载。
        
        ProxyPassReverse:      反向代理,也就是将所有的请求反向代理到负载均衡后的应用url路径中。
        
        stickysession:         进行Session复制使用。    
        
        nofailover              如果设为 On 当工作单元被禁用或者出错时,会话则立即中断。
                                可以将该值设为On如果后端服务器不支持会话复制(Session replication
    
    
    
    

 

热备份

 


    只需添加 status=+H 属性,就可以把某台服务器指定为备份服务器
    
    Apache会每隔几分钟自动检测一下 主服务器 一但主服务器挂掉 则自动分发给备服务器  如果主服务器恢复则自动切换回主服务器

 

 

 

 

监控负载情况 

 

追加一段:  

<Location /balancer-manager>     
    SetHandler balancer-manager   
    Order Allow,Deny  
    Allow from all   
</Location>

 

然后访问  http://www.xxx.com /balancer-manager  来监控负载情况

 

 

 

你可能感兴趣的:(proxy)