小编Pao*_*ato的帖子

HAProxy关闭长生活TCP连接,忽略TCP keepalive

我已经配置了HAProxy(1.5.4,但我也试过1.5.14)来平衡TCP模式两个服务器在5672端口上暴露AMQP协议(WSO2 Message Broker).客户端通过HAProxy创建并使用与AMQP服务器的永久连接.

我已经更改了客户端和服务器TCP keepalive超时,设置net.ipv4.tcp_keepalive_time = 120(CentOS 7).

在HAProxy中,我将超时客户端/服务器设置为200秒(> 120秒的keepalive数据包)并使用选项clitcpka.

然后我开始使用wireshark并嗅探所有tcp流量:在客户端的最后一个请求之后,tcp keepalived数据包在120秒后定期发送,但在客户端的最后一次请求后200秒后连接被关闭(因此忽略keepalived包).

配置下方:

haproxy.conf

global
    log 127.0.0.1   local3
    maxconn 4096
    user haproxy
    group haproxy
    daemon
    debug

listen messagebroker_balancer 172.19.19.91:5672
    mode tcp
    log global
    retries 3
    timeout connect 5000ms
    option redispatch
    timeout client 200000ms
    timeout server 200000ms
    option tcplog
    option clitcpka 
    balance leastconn
    server s1 172.19.19.79:5672 check inter 5s rise 2 fall 3
    server s2 172.19.19.80:5672 check inter 5s rise 2 fall 3
Run Code Online (Sandbox Code Playgroud)

timeout tcp centos haproxy amqp

6
推荐指数
2
解决办法
2万
查看次数

标签 统计

amqp ×1

centos ×1

haproxy ×1

tcp ×1

timeout ×1