camstart API 服务器负载均衡
- docker 安装haproxy
docker pull haproxy
创建配置文件到:D:/docker/haproxy
配置文件内容如下
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 # 配置文件 2 # 全局配置 3 global 4 5 # 设置日志文件输出定向 6 log 127.0.0.1 local3 info 7 8 9 # 守护进程启动,运维方式为后台工作 10 daemon 11 12 # 最大连接数 13 maxconn 4000 14 15 defaults 16 mode tcp #默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK 17 #retries 2 #两次连接失败就认为是服务器不可用,也可以通过后面设置 18 option redispatch #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器 19 option abortonclose #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接 20 timeout connect 20000ms #连接超时 21 timeout client 30000ms #客户端超时 22 timeout server 30000ms #服务器超时 23 #timeout check 2000 #=心跳检测超时 24 log 127.0.0.1 local0 err #[err warning info debug] 25 balance roundrobin #负载均衡算法 26 #option httplog#日志类别,采用httplog 27 #option httpclose #每次请求完毕后主动关闭http通道,ha-proxy不支持keep-alive,只能模拟这种模式的实现 28 #option dontlognull 29 #option forwardfor #如果后端服务器需要获得客户端真实ip需要配置的参数,可以从Http Header中获得客户端ip 30 31 listen test1 32 bind 0.0.0.0:80 33 mode tcp 34 balance roundrobin 35 server s1 192.168.1.101:2881 weight 1 maxconn 10000 check inter 10s 36 server s1 192.168.1.102:2881 weight 1 maxconn 10000 check inter 10s
运行docker容器
docker run -d --name myhaproxy -p 4001:80 -v D:/docker/haproxy:/usr/local/etc/haproxy haproxy:latest
启动容器
docker start myhaproxy
查看容器是否已经正常启动
运行API单元测试代码,外部访问是4001端口
负载均衡成功。