Rom*_*man 10 connection networking load-balancing haproxy
我们的haproxy负载均衡器为其后端打开了数千个连接,即使它的设置说每个服务器实例打开不超过10个连接(见下文).当我取消注释"选项http-server-close"后端连接的数量下降但是我希望保持活动后端连接.
为什么maxconn不受尊重http-keep-alive
?我验证ss
了打开的后端连接处于ESTABLISHED
状态.
defaults
log global
mode http
option http-keep-alive
timeout http-keep-alive 60000
timeout connect 6000
timeout client 60000
timeout server 20000
frontend http_proxy
bind *:80
default_backend backends
backend backends
option prefer-last-server
# option http-server-close
timeout http-keep-alive 1000
server s1 10.0.0.21:8080 maxconn 10
server s2 10.0.0.7:8080 maxconn 10
server s3 10.0.0.22:8080 maxconn 10
server s4 10.0.0.16:8080 maxconn 10
Run Code Online (Sandbox Code Playgroud)
小智 4
在保持活动模式下,不考虑空闲连接。正如 HAProxy邮件线程中所解释的
问题是,当服务器有大量空闲连接时,您不想让请求在服务器队列中等待。
这甚至更有意义,因为知道浏览器启动预连接是为了提高页面性能。因此,在保持活动模式下,仅考虑未完成/活动的连接。
无论使用tcp mode 的连接状态如何,您仍然可以强制 maxconn 限制,特别是我没有看到在当前配置中使用 http 模式的特殊原因(除了具有到达者日志之外)。
或者您可以使用http 模式的http-reuse来实现最低数量的并发连接。
归档时间: |
|
查看次数: |
2193 次 |
最近记录: |