Class WeightRoundRobinLoadBalancer

java.lang.Object
io.github.lunasaw.zlm.node.impl.WeightRoundRobinLoadBalancer
All Implemented Interfaces:
LoadBalancer

public class WeightRoundRobinLoadBalancer extends Object implements LoadBalancer
加权轮询负载均衡器 每次选择节点时基于权重进行随机选择,不维护本地状态
Author:
luna
  • Constructor Details

    • WeightRoundRobinLoadBalancer

      public WeightRoundRobinLoadBalancer()
  • Method Details

    • setNodeSupplier

      public void setNodeSupplier(NodeSupplier nodeSupplier)
      Description copied from interface: LoadBalancer
      设置节点提供器
      Specified by:
      setNodeSupplier in interface LoadBalancer
      Parameters:
      nodeSupplier - 节点提供器
    • selectNode

      public ZlmNode selectNode(String key)
      Description copied from interface: LoadBalancer
      根据key选择节点 每次选择时直接从NodeSupplier获取最新节点列表
      Specified by:
      selectNode in interface LoadBalancer
      Parameters:
      key - 选择key
      Returns:
      选中的节点
    • getType

      public String getType()
      Description copied from interface: LoadBalancer
      获取负载均衡器类型
      Specified by:
      getType in interface LoadBalancer
      Returns:
      类型标识