Memcached--分布式算法演化

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/successA/article/details/52491070



常用的分布式算法是取模法,但是这种方法有一种弊端,就是多台服务器,一台宕机,缓存命中率会大幅度降低。






随后,采用一致性hash算法,核心思想如下:



一致性hash算法核心思想:

例如有4台服务器,0 8亿  16亿  24亿

如果是age--计算key值--得到13亿,那么就从8亿之后顺时针找,找到16亿。

如果是title--计算key值--得到27亿,那么就从24亿后顺时针找到0.

如果16亿这台服务器宕机,压力就直接分摊到24亿服务器上。



引入虚拟节点

就是之前把一台宕机,压力承载到下一台服务器;为A,B,C,分配虚拟节点,A如果宕机,可能压力分摊到B上,也可能分摊到C上。










猜你喜欢

转载自blog.csdn.net/successA/article/details/52491070