需求产生
Apache作为websocket代理,按照请求次数进行负载均衡。欢迎交流coconets@163.com
设置方法
修改httpd.conf 开启5个扩展:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
其中mod_lbmethod_byrequests
表示按请求数来负载均衡,再修改 VirtualHost 配置如下:
Listen 8000
<VirtualHost *:8000>
<Proxy balancer://websocket>
BalancerMember ws://127.0.0.1:8001
BalancerMember ws://127.0.0.1:8002
BalancerMember ws://127.0.0.1:8003
BalancerMember ws://127.0.0.1:8004
</Proxy>
ProxyPass / balancer://websocket
</VirtualHost>
重新启动 Apache 服务,如果有错误和优化点,欢迎交流coconets@163.com