首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编写加权负载均衡算法

编写加权负载均衡算法
EN

Stack Overflow用户
提问于 2010-10-07 06:11:43
回答 2查看 8.2K关注 0票数 4

我必须编写一个加权负载平衡算法,我正在寻找一些参考资料。有什么书吗?你可以建议理解这样的算法。

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2010-10-07 06:24:32

这里的一个简单的算法并不是那么复杂。

假设您有一个具有以下权重的服务器列表:

代码语言:javascript
复制
A 10
B 20
C 30

其中较高的权重表示它可以处理更多的流量。

只需将发送到每个服务器的流量除以权重,然后从小到大进行排序。出现在顶部的服务器获取用户。

例如,假设每个服务器从10个用户开始,那么顺序将是:

代码语言:javascript
复制
C - 10 / 30 = 0.33
B - 10 / 20 = 0.50
A - 10 / 10 = 1.00

这意味着接下来的5个请求将转到服务器C。第6个请求将转到C或B。第7个请求将转到没有处理第6个请求的任何一个。

让事情更复杂的是,你可能希望平衡器更智能。在这种情况下,它需要跟踪每个服务器当前正在服务的请求数,并在请求完全完成时递减它们。

进一步的复杂性包括增加会话的粘性。这意味着均衡器必须检查每个请求的会话id,并跟踪它们上次去了哪里。

总体而言,如果你可以从一家已经这样做的公司购买产品。

票数 10
EN

Stack Overflow用户

发布于 2010-10-09 00:42:33

Tomcat的balancer应用程序和tutorial here是一个很好的起点。

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

https://stackoverflow.com/questions/3877294

复制
相关文章

相似问题

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