是否可以使用一个 haproxy 进程来对多个协议/端口进行负载平衡?

是否可以使用一个 haproxy 进程来对多个协议/端口进行负载平衡?

我已经让 haproxy 为我们工作了。但是现在有两个 haproxy 进程正在运行。一个用于 HTTP,另一个用于 TCP (RTMP)。我尝试在一个配置文件中配置两个代理,但是 haproxy 只处理 HTTP。

我的配置文件:

global
    log 127.0.0.1 local0
    log 127.0.0.1 local1 notice
    #daemon
    debug
    user haproxy
    group haproxy
    maxconn 4096

defaults
    log global
    mode tcp
    option tcplog
    option dontlognull
    option redispatch
    retries 3
    maxconn 2000
    contimeout 10000
    clitimeout 50000
    srvtimeout 50000

listen http :80
    mode tcp
    balance roundrobin

    server h1 xxx.xxx.xxx.xxx:80 check
    server h2 xxx.xxx.xxx.xxx:80 check

listen rtmp :1935
   mode tcp
   balance roundrobin

   server s1 xxx.xxx.xxx.xxx:1935 check
   server s2 xxx.xxx.xxx.xxx:1935 check

这对我来说不起作用。只有当我将配置分为两部分(一个 HTTP,一个 RTMP)并启动两个 haproxy 进程时,它才有效。

答案1

好吧,我必须再回答一次我自己的问题。是的,这是可能的,而且我的配置文件有效。问题出在 HAProxy 之外的某个地方。我很抱歉。

相关内容