顺风车运营研发团队 方波
1 遍历算法

clipboard.png

clipboard.png

以上过程可以概括为 同余分组

2 scan 超出预期个数问题

scan结果:

clipboard.png

redis存储分布:

clipboard.png

clipboard.png
遍历顺序:

clipboard.png

遍历代码:

clipboard.png

结论:

scan按照反转二进制算法形成特殊的遍历顺序保证在rehash扩容时不重不漏,由于按照游标进行遍历,当遇到有hash冲突时,返回结果可能超过预期。


AI及LNMPRG研究
7.2k 声望12.8k 粉丝

一群热爱代码的人 研究Nginx PHP Redis Memcache Beanstalk 等源码 以及一群热爱前端的人