com.baidu.jprotobuf.pbrpc.client.ha.lb.strategy
类 RoundRobinLoadBalanceStrategy

java.lang.Object
  继承者 com.baidu.jprotobuf.pbrpc.client.ha.lb.strategy.RoundRobinLoadBalanceStrategy
所有已实现的接口:
LoadBalanceStrategy, NamingServiceLoadBalanceStrategy

public class RoundRobinLoadBalanceStrategy
extends java.lang.Object
implements NamingServiceLoadBalanceStrategy

A weighted round robin strategy implementation for LoadBalanceStrategy interface

从以下版本开始:
2.16
作者:
xiemalin
另请参见:
LoadBalanceStrategy, RoundRobinLoadBalanceStrategy

构造方法摘要
RoundRobinLoadBalanceStrategy(java.util.Map<java.lang.String,java.lang.Integer> lbFactors)
           
RoundRobinLoadBalanceStrategy(java.lang.String serviceSignature, NamingService namingService)
          Constructor with load balance factors.
 
方法摘要
 void doReInit(java.lang.String serviceSignagure, NamingService namingService)
          do reinit once by the naming service
 java.lang.String elect()
          do load balance and get target
 java.util.Set<java.lang.String> getFailedTargets()
           
 NamingService getNamingService()
          get the namingService
 java.util.Set<java.lang.String> getTargets()
          get availabled load balance target list.
 boolean hasTargets()
           
protected  void init(java.util.List<RegisterInfo> servers)
           
protected  void init(java.util.Map<java.lang.String,java.lang.Integer> lbFactors)
           
 java.util.List<java.lang.String> initTargets(java.util.Map<java.lang.String,java.lang.Integer> lbFactors)
           
 void recoverTarget(java.lang.String key)
          add target to load balance target list.
 void removeTarget(java.lang.String key)
          remove target from load balance target list.
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

RoundRobinLoadBalanceStrategy

public RoundRobinLoadBalanceStrategy(java.lang.String serviceSignature,
                                     NamingService namingService)
Constructor with load balance factors.

参数:
lbFactors -

RoundRobinLoadBalanceStrategy

public RoundRobinLoadBalanceStrategy(java.util.Map<java.lang.String,java.lang.Integer> lbFactors)
方法详细信息

getNamingService

public NamingService getNamingService()
get the namingService

返回:
the namingService

init

protected void init(java.util.List<RegisterInfo> servers)

init

protected void init(java.util.Map<java.lang.String,java.lang.Integer> lbFactors)

elect

public java.lang.String elect()
从接口 LoadBalanceStrategy 复制的描述
do load balance and get target

指定者:
接口 LoadBalanceStrategy 中的 elect
返回:

getTargets

public java.util.Set<java.lang.String> getTargets()
从接口 LoadBalanceStrategy 复制的描述
get availabled load balance target list.

指定者:
接口 LoadBalanceStrategy 中的 getTargets
返回:

initTargets

public java.util.List<java.lang.String> initTargets(java.util.Map<java.lang.String,java.lang.Integer> lbFactors)

removeTarget

public void removeTarget(java.lang.String key)
从接口 LoadBalanceStrategy 复制的描述
remove target from load balance target list.

指定者:
接口 LoadBalanceStrategy 中的 removeTarget

recoverTarget

public void recoverTarget(java.lang.String key)
从接口 LoadBalanceStrategy 复制的描述
add target to load balance target list.

指定者:
接口 LoadBalanceStrategy 中的 recoverTarget

hasTargets

public boolean hasTargets()
指定者:
接口 LoadBalanceStrategy 中的 hasTargets
返回:
true if availabled load balance target list is not empty

getFailedTargets

public java.util.Set<java.lang.String> getFailedTargets()
指定者:
接口 LoadBalanceStrategy 中的 getFailedTargets
返回:
failed load balance target

doReInit

public void doReInit(java.lang.String serviceSignagure,
                     NamingService namingService)
从接口 NamingServiceLoadBalanceStrategy 复制的描述
do reinit once by the naming service

指定者:
接口 NamingServiceLoadBalanceStrategy 中的 doReInit
namingService - NamingService


Copyright © 2015 Baidu, Inc.. All Rights Reserved.