方波1、redis实现集群需要解决的问题列表:1 多key读写(mget mset)2 多key计算(集合交并集计算)3 扩缩容4 proxy冗余2、一致性hash环:1 一致性Hash算法将整个哈希值空间组织成一个虚拟的圆环,比如redis的16384个slot。2 将机器虚拟并随机在环上分配相应slot区间。随机虚拟节点是为了解决数据倾斜问题。3 增加机器时,将原区间上的数据重新hash到两个区间,比如[b2, c1],加入d3为[b2, d3], [d3, c1]4 机器故障时,只会影响分配到该机器的key。3、go协程与线程的讨论go调度器如何管理goroutine:实验代码:package mainimport ( “fmt” “time”)func main() { for i:=0;i<10000;i++ { go func() { fmt.Println(“start “, i) time.Sleep(time.Duration(100)*time.Second) fmt.Println(i) }() } time.Sleep(time.Duration(2000)*time.Second) fmt.Println(“main end”)}当for循环创建10w协程时,线程数量大约1w+;当for循环创建1w协程时,线程数量大约700+;原理部分,后续阅读golang源码再进一步定位。