
技术摘要:
本发明公开了一种缓存集群优化方法、设备及存储介质,涉及但不限于互联网技术领域,其中一种缓存集群优化方法,通过读取调用的热点KEY生成子KEY,进行判断缓存集群中是否存在生成的子KEY,若缓存集群中不存在生成的子KEY,则读取缓存集群中存在热点KEY的缓存节点并根据 全部
背景技术:
随着互联网行业的高速发展,网站数据缓存已经成为网站的一个关键性支撑技 术。缓存服务如Redis(Remote Dictionary Server,远程字典服务),Memcache(分布式高速 缓存系统)等也在不断升级发展,但是当使用Redis,Memcache集群进行缓存处理时,往往会 遇上大量的并发请求,而对应的缓存落在缓存集群中的同一缓存节点上,导致集群节点被 频繁访问,造成集群负载不均衡的问题,即缓存系统中的热点KEY的问题。 目前关于热点KEY的解决方法则是采用本地客户端缓存热点KEY,将热点KEY对应 的VALUE一并缓存在本地客户端。但是这种方法一方面缺少通用性,需要对本地客户端进行 定制开发,另一方面由于不同本地客户端需要单独设置缓存失效时间导致存在缓存数据不 一致的问题。
技术实现要素:
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种缓 存集群优化方法,能够解决热点KEY的问题,实现缓存集群的负载均衡。 对应于一种缓存集群优化方法,本发明还提出一种电子设备。 对应于一种缓存集群优化方法,本发明还提出一种计算机可读存储介质。 第一方面,本发明采用的技术方案为一种缓存集群优化方法,包括:根据读取的热 点KEY生成子KEY;判断缓存集群中是否存在所述子KEY,若所述缓存集群中不存在所述子 KEY,则读取缓存集群中的热点KEY并根据所述热点KEY在集群节点上生成所述子KEY及所述 子KEY的值,并返回所述子KEY的值。 进一步地,所述子KEY根据所述热点KEY、时间戳和随机数进行哈希计算生成。 进一步地,根据所述时间戳和所述随机数进行哈希计算生成所述子KEY的序号,所 述序号用于标识所述子KEY所在的集群节点。进一步地,根据所述缓存集群中的集群节点的 个数确定所述随机数 进一步地,所述判断缓存集群中是否存在所述子KEY,包括:根据所述子KEY的序号 查找对应的集群节点,并判断所述集群节点中是否存在所述子KEY。 进一步地,读取缓存集群中的热点KEY并根据所述热点KEY在集群节点上生成所述 子KEY及所述子KEY的值,包括:读取所述缓存集群中存有的所述热点KEY,并在所述子KEY的 序号对应的集群节点中生成子KEY和所述子KEY的值。 进一步地,所述判断缓存集群中是否存在所述子KEY,还包括:若所述缓存集群中 存在所述子KEY,则返回所述子KEY的值。 进一步地,所述若所述缓存集群中存在所述子KEY,包括:若所述子KEY的序号对应 3 CN 111597477 A 说 明 书 2/6 页 的集群节点中存在所述子KEY,则返回所述子KEY的值。 第二方面,本发明采用的技术方案为一种电子设备,包括至少一个处理器,以及, 与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处 理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执 行第一方面所述的缓存集群优化方法。 第三方面,本发明采用的技术方案为一种计算机可读存储介质,包括所述计算机 可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行第一方 面所述的缓存集群优化方法。 本发明的有益效果是: 本发明提供一种缓存集群优化方法,通过读取调用的热点KEY生成子KEY,进行判 断缓存集群中是否存在生成的子KEY,若缓存集群中不存在生成的子KEY,则读取缓存集群 中存在热点KEY的缓存节点并根据热点KEY在集群节点上生成子KEY及子KEY的值,并返回给 客户端子KEY的值,从而解决热点KEY导致缓存集群负载不均衡的问题,并保证数据一致。 附图说明 图1是本发明实施例中缓存集群优化方法的一具体实施例流程示意图; 图2是本发明实施例中缓存集群优化方法的另一具体实施例流程示意图; 图3是本发明实施例中缓存集群优化方法的一应用实例流程示意图; 图4是本发明实施例中缓存集群优化方法的另一应用实例流程示意图。