|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectorg.tinygroup.dbrouter.util.ConsistentHash<T>
public class ConsistentHash<T>
| 构造方法摘要 | |
|---|---|
ConsistentHash(Collection<T> nodes)
|
|
ConsistentHash(int numberOfReplicas,
Collection<T> nodes)
|
|
| 方法摘要 | |
|---|---|
void |
addShardInfo(T node)
增加虚拟接点与真实机器节点映射 |
static String |
getRandomString(int length)
|
List<Long> |
getShard(T node)
|
T |
getShardInfo(String key)
取得真实机器节点 |
Long |
hash(String key)
MurMurHash算法,是非加密HASH算法,性能很高,碰撞率低 |
void |
removeShardInfo(T node)
删除真实机器节点 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 构造方法详细信息 |
|---|
public ConsistentHash(Collection<T> nodes)
public ConsistentHash(int numberOfReplicas,
Collection<T> nodes)
hashFunction - hash 函数接口numberOfReplicas - 每个机器节点关联的虚拟节点个数nodes - 真实机器节点| 方法详细信息 |
|---|
public void addShardInfo(T node)
node - public List<Long> getShard(T node)
public void removeShardInfo(T node)
node - public T getShardInfo(String key)
key -
public Long hash(String key)
public static String getRandomString(int length)
|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||