【问题标题】:Change the backend maxconn in HAProxy更改 HAProxy 中的后端 maxconn
【发布时间】:2023-08-28 12:44:01
【问题描述】:

我有一个全局 maxconn 设置为 20000 的 HAProxy 服务器。我希望所有后端(基于路由有 60 个不同的前端)默认设置为 3000。有没有办法在全局范围内做到这一点?

相关代码:

frontend webapp
    bind 127.0.0.1:8001
    default_backend webapp

backend webapp
server  aa7648e1b884de0afe8491a0e internal-aa7648e1bb60884de0afe8491a0e-1191952057.us-east-1.elb.amazonaws.com:80 maxconn 3000

我看到服务器的后端已更改,但后端默认值仍为 2000(查看截图)

【问题讨论】:

    标签: haproxy


    【解决方案1】:

    您不能为后端设置maxconn(如docs 中所述)。 后端会话的限制是没有意义的,除非你使用minconn 回答这里: https://discourse.haproxy.org/t/backend-sessions-limit-200/1661/3

    会话限制仅在使用 minconn 时相关: https://www.mail-archive.com/haproxy@formilux.org/msg26566.html 正如 Moemen MHEDHBI 解释的那样:

    后端行中的会话限制是指该后端的 fullconn 参数。 > > fullconn 是关于在后端服务器上设置动态 maxconn。您可以在文档中阅读更多相关信息 http://cbonte.github.io/haproxy-dconv/1.7/configuration.html#4-fullconn 1.7k

    如果您在服务器线路中设置了“minconn”(使用动态maxconn),则需要考虑“fullconn”参数,否则可以忽略它。

    【讨论】: