如何解决如何限制HAProxy后端中所有服务器的同时传出连接的总数
我正在将HAProxy用作内部微服务的出口控制器,以使用外部API。该API的严格规则是一次最多只能同时打开18个并发线程,这就是为什么我使用HAProxy的原因,因为可能有多个应用程序可能同时处于活动状态,而彼此之间并没有意识到相互使用的线程
要启用此功能,HAProxy应该接受所有传入请求,并以18个最大线程的硬限制将它们路由到API(应将更多请求简单地排入队列,而不是被拒绝)。
对于配置,我为服务器添加了一个带有maxconn 18
设置的后端。问题是,有多个具有不同服务器地址的API路由,这需要多个服务器和条件路由。
在下面的示例中,我为每个服务器设置了maxconn 18
,但这可能允许在整个后端的所有服务器上打开18个以上的服务器,这会违反API的规则。
后端fullconn 18
是否会实现我想要做的事情?文档尚不清楚。
示例:
backend api
fullconn 18
# Search
acl is_search path -i -m beg /search/
http-request set-header Host search.api.com if is_search
use-server search if is_search
server search search.api.com maxconn 18
# Lookup
acl is_lookup path -i -m beg /lookup/
http-request set-header Host lookup.api.com if is_lookup
use-server lookup if is_lookup
server lookup lookup.api.com maxconn 18
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。