大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
Apache负载均衡配置详解,首先需要配置apache的反向代理,可以参考文章: apache反向代理配置
1、打开apache对负载均衡的支持
配置文件/etc/httpd/conf/httpd.conf
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
2、增加配置反向代理,并注释掉原来代理的配置
<VirtualHost *:80>
ServerAdmin ganymede.wuke@foxmail.com
ServerName www.ganymede.com
ProxyRequests Off
#<Proxy *>
#Order deny,allow
#Allow from all
#</Proxy>
ProxyPass /test1_2 balancer://cluster/test1_2
ProxyPassReverse /test1_2 balancer://cluster/test1_2
</VirtualHost>
配置基于cluster的路径的代理
3、配置基于http的负载均衡
<Proxy balancer://cluster>
BalancerMember http://spark1:8088/
BalancerMember http://spark2:8088/
</Proxy>
基于cluster的代理都分别转向了spark1与spark2两台服务器,默认负载是两台服务器一样的。
<Proxy balancer://cluster>
BalancerMember http://spark1:8088/ loadfactor=5
BalancerMember http://spark2:8088/ loadfactor=1
</Proxy>
配置load factor 负荷系数,载荷因素。以上配置,访问分配spark1与spark2为5比1 ,即有6次请求,有5次转向了spark1服务器,1次转向了spark2服务器。
4、配置基于ajp的负载均衡
在VirtualHost增加反向代理配置
ProxyPass /testajp balancer://clusterajp/testajp
ProxyPassReverse /testajp balancer://clusterajp/testajp
增加一个新的Proxy代理配置
<Proxy balancer://clusterajp>
BalancerMember ajp://spark1:8021/
BalancerMember ajp://spark2:8021/
</Proxy>
5、ajp代理优于http代理
前端apache,后端tomcat,通过ajp协议访问性能优于http协议,随着并发量的提升,效果会更加趋于明显。可以从吞吐率和总时间开销上观察。 (吞吐率:单位时间内计算机的处理请求来描述其并发处理能力)
原因总结如下:
1、ajp使用长连接保持webServer和servlet Container的通信,减少了建立tcp连接的开销。可以通过观察tomcat/manager 下serverStatus,ajp建立的连接都处于keepalive的状态。
2、ajp使用一定的协议格式,减少了传递的报文数据大小,节省了带宽。可以通过观察ajp和http 的benchmark报告重看到,Total transferred 一项有明显的区别。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/195439.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...