round_robin 的几种取值
Posted 青山应回首
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了round_robin 的几种取值相关的知识,希望对你有一定的参考价值。
ATS-6 的round_robin可以有4种算法可以选择
-
true
Traffic Server goes through the parent cache list in a round robin-based on client IP address.
按照客户端IP进行轮训,如果都是一个客户端发的请求,则每次都会hash到某个指定的parent IP去回源;如果这个hash到的IP宕机了,则会选和这个IP相邻的下一个parent IP进行回源;
-
false
Round robin selection does not occur.
没有轮训的概念,每次选择parent IP的时候都是从头到尾遍历 parent list,只要有一个parent可用就选择这个parent去回源;
-
strict
Traffic Server machines serve requests strictly in turn. For example: machine proxy1 serves the first request, proxy2 serves the second request, and so on.
按照客户端发过来的请求进行轮训,忽略客户端IP来源,第一个请求交给第一个parent去回源,下一个到来的请求会交给相邻的下一个parent去回源,依次轮训parent;(即所有的请求都分散给所有可用的parent了,起到负载均衡的作用); 如果轮到一个parent死掉了,则会选择相邻的下一个parent进行回源;
-
consistent_hash
consistent hash of the url so that one parent is chosen for a given url. If a parent is down, the traffic that would go to the down parent is rehashed amongst the remaining parents. The other traffic is unaffected. Once the downed parent becomes available, the traffic distribution returns to the pre-down state.
按照客户端请求的URL进行一致性hash,请求到来如果miss,那么ATS会通过一致性hash算法选择一个parent并把miss请求交给它; 一旦ATS检测到这个 parent 宕机了,那么会再从剩下的parent节点里再hash出一个新的parent去回源;不会影响响应请求; 后面如果宕掉的那个parent恢复服务能力后,将会进入 pre-down 状态
以上是关于round_robin 的几种取值的主要内容,如果未能解决你的问题,请参考以下文章