首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HAProxy中的自定义负载平衡逻辑

HAProxy中的自定义负载平衡逻辑
EN

Stack Overflow用户
提问于 2021-07-19 12:13:50
回答 1查看 409关注 0票数 0

我正在开发一个视频会议应用程序。我们有一个创建房间的服务器池,一个房间可以有n个用户。我在探索HAProxy和其他几种负载平衡器,但是我找不到任何解决方案。

我的要求如下

  1. 在创建时负载最低的服务器上应该创建一个房间。
  2. 该房间的所有用户都应该在同一台服务器上加入。

我尝试过一致散列的url_param平衡逻辑,但它是随机分配的负载。使用现代的L7负载平衡器是否可能,或者我是否需要为这个场景编写一些自定义逻辑(在某些负载均衡器中)或一个单独的应用程序?

在维护会话粘性的同时,是否有任何基于连接或CPU使用情况来平衡负载的方法?

EN

回答 1

Stack Overflow用户

发布于 2021-07-21 15:02:54

文档说,您可以选择像leastconn这样的算法,只有当没有持久性信息可用时,或者当连接被重新分派到另一台服务器时,这才适用。所以答案的第二部分是棍棒表。读取和其他棒关键字

所以用棍子桌子看起来是这样的:

代码语言:javascript
复制
backend foo
    mode http
    balance leastconn
    stick store-request src
    stick-table type ip size 200k expire 30m
    server s1 192.168.1.1:8080
    server s2 192.168.1.2:8080

文档中还有更多的示例。

您需要弄清楚(或告诉我们)的是,我们如何才能根据要求知道客户想要的房间,并制作这样的桌子和规则。如果它在URL或http头中,那么它在haproxy中是完全可行的。

如果leastconn不够好,则可以使用haproxy的unix套接字CLI动态调整服务器的权重,并使用roundrobin算法。另外,可以为服务器配置代理选项,以动态设置服务器的权重。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68440319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档