HAProxy端口转发优缺点
优点:工作在应用层,能用BBR,适合跨境和延迟高的网络。
缺点:仅支持TCP,无法转发UDP流量,高流量或复杂规则可能消耗较多CPU和内存,容易被DDoS攻击
安装
sudo apt-get update
sudo apt-get install haproxy -y
/etc/haproxy/haproxy.cfg
编辑配置文件:
sudo nano /etc/haproxy/haproxy.cfg
配置文件内容:
global
log /dev/log local0
log /dev/log local1 notice
maxconn 10000 #最大并发连接数为10000
tune.bufsize 131072 #设置128KB缓存
tune.maxrewrite 2048 #每个缓冲区最大重写空间为2048字节
nbthread 4 # 启用多线程(根据 CPU 核心数调整)
daemon
defaults
log global
option tcplog
timeout connect 3000ms #连接后端服务器的超时时间为 3 秒
timeout client 30000ms #客户端超时时间为 30 秒
timeout server 30000ms #服务器超时时间为 30 秒
frontend https_in
bind *:543 tfo #本地监听端口543
mode tcp
default_backend ocserv_backend
backend ocserv_backend
mode tcp
server ocserv_local 127.0.0.1:443 check #目标服务器地址和端口
加载配置文件,测试配置是否正确。
haproxy -c -f /etc/haproxy/haproxy.cfg
输出:Configuration file is valid
启动服务:
systemctl status haproxy.service
重启以后会自动生效,同时内核只要开启了BBR,也会起作用。