题目:
工程师常用服务器集群来设计和实现数据缓存,以下是常见的策略。
1.无论是添加、查询还是删除数据,都先将数据的 id 通过哈希函数转换成一个哈希值,记为 key。
2. 如果目前机器有 N 台,则计算 key%N 的值,这个值就是该数据所属的机器编号,无论是添加、删除还是查询操作,都只在这台机器上进行。
请分析这种缓存策略可能带来的问题,并提出改进的方案。
题目:
工程师常用服务器集群来设计和实现数据缓存,以下是常见的策略。
1.无论是添加、查询还是删除数据,都先将数据的 id 通过哈希函数转换成一个哈希值,记为 key。
2. 如果目前机器有 N 台,则计算 key%N 的值,这个值就是该数据所属的机器编号,无论是添加、删除还是查询操作,都只在这台机器上进行。
请分析这种缓存策略可能带来的问题,并提出改进的方案。