终端有可能看不到所有的缓冲
考虑到分布式系统每个节点都有可能失效 , 并且新的节点很可能动态的增加进来 , 如何保证当系统的节点数目发生变化时仍然能够对外提供良好的服务 , 这是值得考虑的 , 尤其实在设计分布式缓存系统时 , 如果某台服务器失效 , 对于整个系统来说如果不采用合适的算法来保证一致性 , 那么缓存于系统中的所有数据都可能会失效(即由于系统节点数目变少 , 客户端在请求某一对象时需要重新计算其hash值(通常与系统中的节点数目有关) , 由于hash值已经改变 , 所以很可能找不到保存该对象的服务器节点) , 因此一致性hash就显得至关重要 , 良好的分布式cahce系统中的一致性hash算法应该满足以下几个方面:
-
平衡性(Balance)平衡性是指哈希的结果能够尽可能分布到所有的缓冲中去 , 这样可以使得所有的缓冲空间都得到利用 。 很多哈希算法都能够满足这一条件 。
-
推荐阅读
- 三国杀|三国杀:有没有可能一张杀干掉七个人?加伤尿分叉缺一不可!
- 穿越火线|CF:从挑战模式的现实需要出发,未来有可能出现哪些功能性道具?
- 万圣节|全开者战队:万圣节专场来袭,破坏凯撒有可能是介人的父亲!
- 宿舍|王者荣耀:李信这次周年庆过后,还有可能出新皮肤?暗信玩家哭了
- 穿越火线|还记得穿越火线的兵服和战服吗?如今在CFHD都看不到了
- 手机游戏|DNF手游今年上线无望,体验服已经彻底凉凉,热闹街区看不到一个人
- rw战队|KPL前瞻:Hero对阵RW侠首发公布,黑鲸的Flag真有可能实现
- 白鲨|王者中的无皮英雄谁最有可能摆脱这个称号?狼狗表示我绝无可能
- 许秀|DK并非王者之师,LPL赛区依然有可能夺冠,Showmaker成为最大问题!
- 大唐|梦幻西游:黑市拍卖中最恶心人的事,头像全亮还有可能会亏钱呢