首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Istio 0.8。LoadBalancerSettings.ConsistentHashLB的详细信息

Istio 0.8。LoadBalancerSettings.ConsistentHashLB的详细信息
EN

Stack Overflow用户
提问于 2018-06-03 21:07:22
回答 1查看 598关注 0票数 2

有没有人能提供更多关于负载均衡算法工作原理的细节或例子?

https://istio.io/docs/reference/config/istio.networking.v1alpha3/#LoadBalancerSettings.ConsistentHashLB

基于

一致性哈希(ketama hash)的负载均衡器,可在连接池发生变化时实现均匀的负载分配/重分配。该负载均衡策略仅适用于基于HTTP的连接。用户指定的HTTP头被用作xxHash散列的密钥。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-04 05:38:55

LoadBalancerSettings.ConsistentHashLB标志用于特使配置,在Envoy's Load Balancing Docs中有更多详细信息

环/模哈希负载均衡器对上游主机实施一致的哈希。该算法基于将所有主机映射到一个圆上,使得从主机集中添加或删除主机的变化仅影响1/N请求。这种技术通常也称为“ketama”散列。

这是一种哈希算法,可以减少从特使的平衡池中添加和删除服务器(例如,VirtualService背后的服务器)的影响。

如果没有这样的算法,则将单个服务器添加到池causes hashes to map to different servers

我们编写了ketama来替换memcached客户端将键映射到servers...whenever的方式。我们在池中添加或删除了服务器,所有内容都散列到不同的服务器,这有效地擦除了整个缓存。

再次回到Istio -特使的文档中请注意:

一致性散列负载均衡器仅在使用指定要散列的值的协议路由时有效。

这意味着-指定用于生成散列的标头。来自Istio docs

httpHeader | string |必填。将用于获取哈希键的HTTP请求标头的名称。如果请求报头不存在,负载均衡器将使用随机数作为散列,从而有效地使负载平衡策略随机化。

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

https://stackoverflow.com/questions/50666756

复制
相关文章

相似问题

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