码迷,mamicode.com
首页 > 系统相关 > 详细

源码分析之groupcache之consistenthash

时间:2019-03-30 10:31:59      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:函数   crc   使用   list   源码分析   原理   sorted   int   定义   

很多时候读开源的库就是为自己准备大量的代码库,优秀开源项目代码质量比绝大部分人的代理质量都要高。

依赖的库

```
import (
"hash/crc32"
"sort"
"strconv"
)
```

基本的结构
```
type Hash func(data []byte) uint32

type Map struct {
hash Hash
replicas int
keys []int // Sorted
hashMap map[int]string
}

```

结构说明

hash 定义hash函数
replicas计算副本
使用keys存储当前的值的list
hashMap 存储放入的int对应的key

原理

1 对key产生多个副本,计算int值存放到,keys中,同时把hashint对应到key
2 对应每个传入的key,计算hash值,使用二分查找找到key

源码分析之groupcache之consistenthash

标签:函数   crc   使用   list   源码分析   原理   sorted   int   定义   

原文地址:https://www.cnblogs.com/beckbi/p/10625282.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!