com.taobao.metamorphosis.client.consumer
类 ConsisHashStrategy
java.lang.Object
com.taobao.metamorphosis.client.consumer.ConsisHashStrategy
- 所有已实现的接口:
- LoadBalanceStrategy
public class ConsisHashStrategy
- extends Object
- implements LoadBalanceStrategy
基于一致性哈希的负载均衡策略:
- 将所有consumer组织成一个环
- 将所有分区根据hash值插入到环上
- 获取指定consumer前面,前一个consumer之后的分区列表作为结果
- 作者:
- boyan(boyan@taobao.com)
从类 java.lang.Object 继承的方法 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ConsisHashStrategy
public ConsisHashStrategy()
computeMd5
public static byte[] computeMd5(String k)
- Get the md5 of the given key.
getPartitions
public List<String> getPartitions(String topic,
String consumerId,
List<String> curConsumers,
List<String> curPartitions)
- 从接口
LoadBalanceStrategy
复制的描述
- 根据consumer id查找对应的分区列表
- 指定者:
- 接口
LoadBalanceStrategy
中的 getPartitions
- 参数:
topic
- 分区topicconsumerId
- consumerIdcurConsumers
- 当前所有的consumer列表curPartitions
- 当前的分区列表
- 返回:
Copyright © 2010–2013. All rights reserved.