使用Apache实现负载均衡。

测试都是在本地环境进行的。

1、安装Apache服务

下载:

https://www.apachehaus.com/cgi-bin/download.plx?dli=hBjUYRWeZVjTEt2LOhlTykkVOpkVFd1aVpXQw0UU

2、解压

解压目录:E:\dev\Apache24。

3、配置环境变量

把路径【E:\dev\Apache24\bin】追加到环境变量PATH。

4、配置Apache

用文本编辑器配置文件:E:\dev\Apache24\conf\httpd.conf

4.1、配置服务根目录

 

Define SRVROOT "/Apache24"

修改为:

Define SRVROOT "E:\dev\Apache24"

4.2、设置Apache服务端口

Listen 80

修改为: 

Listen 8088

添加一行:

#ServerName www.example.com:80
ServerName localhost:8088    #此行为新添加的

4.3、选择需要加载的模块

以下模块放开注释:

LoadModule access_compat_module modules/mod_access_compat.so

LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

LoadModule proxy_http_module modules/mod_proxy_http.so

LoadModule slotmem_shm_module modules/mod_slotmem_shm.so

4.4、设置Apache服务的默认访问路径

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

修改为: 

<IfModule dir_module>
    DirectoryIndex platform
</IfModule>

PS:此处根据自己项目情况修改

4.5、配置负载均衡

在文件末尾追加内容:

ProxyRequests Off
<Proxy balancer://clusters>
  BalancerMember http://localhost:8081
  BalancerMember http://localhost:8082
  proxySet stickysession=STICK_PORT_TOKEN nofailover=On
</Proxy>
ProxyPass / balancer://clusters/
ProxyPassReverse / balancer://clusters/
#ProxyPass /platform balancer://clusters/platform
#ProxyPassReverse /platform balancer://clusters/platform


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

5、启动Apache服务

可以使用【E:\dev\Apache24\bin\ApacheMonitor.exe】进行启动、停止、重启操作

6、访问负载均衡管理界面

http://localhost:8088/balancer-manager

测试有两个应用节点:http://localhost:8081 和 http://localhost:8082

两个应用节点的默认路径是patform,这个与【4.4、设置Apache服务的默认访问路径】对应

ProxyPass:正向代理
ProxyPassReverse:反向代理

代理路径示例:

客户端请求路径:http://localhost:8088/login

实际请求路径:http://localhost:8081/login 或 http://localhost:8082/login

以上只是完成了简单负载均衡配置,对各个参数和代理方式深入研究后,继续补充完善。

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章