[发明专利]分布式缓存方法、装置、计算机系统及存储介质在审
申请号: | 201910040989.1 | 申请日: | 2019-01-16 |
公开(公告)号: | CN109714430A | 公开(公告)日: | 2019-05-03 |
发明(设计)人: | 秦岭;周晶 | 申请(专利权)人: | 深圳壹账通智能科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/24 |
代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 林彦之 |
地址: | 518052 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 客户端 缓存 拼接 分布式缓存 存储介质 关联信息 缓存数据 命名空间 业务线 计算机设备 中间层代理 节点关联 若干个槽 点对点 计算机系统 集群 跳转 直连 查找 保存 分配 | ||
本发明提供一种分布式缓存方法、装置、计算机设备及存储介质,该方法包括:将缓存客户端分配成若干业务线,并为每条业务线建立一个实例,同时采用命名空间机制对不同客户端进行命名,而后将各实例分成若干个槽,并将每个槽与redis集群中的一个redis节点关联,保存关联信息;当一客户端需缓存由键和值组成的数据时,通过缓存客户端获取缓存数据的键对应的槽,并根据关联信息查找槽对应的redis节点,而后将客户端对应的命名空间和实例名与键进行拼接,形成拼接键,并将缓存数据对应的拼接键及值以键值对的形式缓存至查找到的redis节点中。本发明可以实现客户端与redis节点的点对点直连,不需要中间层代理,也不需要进行频繁地跳转。
技术领域
本发明涉及缓存技术领域,尤其涉及一种分布式缓存方法、装置、计算机系统及存储介质。
背景技术
目前市面上有两种主要的基于redis(REmote DIctionary Server,远程数据服务)的分布式缓存解决方案:redis cluster(集群)和codis(Connection–Mode Data LinkService,连接方式数据链路服务)。采用redis cluster方案时,redis集群中的所有redis节点彼此互联,内部使用二进制协议优化传输速度和带宽;缓存客户端与redis节点直连,不需要中间proxy(代理)层,缓存客户端不需要连接redis集群的所有节点,连接集群中任何一个可用节点即可。然而,redis cluster方案具有一个缺点:在一个redis节点收到查询非本节点数据的请求时,需要重定向跳转到另外一个节点来实现分片策略,这样的方式会显著增加网络开销带来的延时。采用codis方案时,与Redis cluster不同的是,codis在redis集群前添置中心化的codis proxy,并通过codis proxy来识别数据在哪个节点上,无需重定向跳转到另外一个节点来实现分片策略,然而,若中心化的codis proxy一旦发生故障,则会带来巨大的风险。
发明内容
本发明的目的在于提供一种分布式缓存方法、装置、计算机系统及存储介质,用于解决上述现有技术存在的问题。
为了实现上述目的,本发明提供一种分布式缓存方法,包括以下步骤:
S101,将需要缓存数据的多个缓存客户端分配至若干业务线,并为每条业务线建立一个实例,以使同一业务线中的不同缓存客户端对应同一个实例名;
S102,采用命名空间机制对同一业务线中的不同缓存客户端进行命名,以使同一业务线中的不同缓存客户端对应不同的命名空间;
S103,将每一个所述实例分成N个槽,N为自然数;
S104,将每个所述槽与redis集群中的一个redis节点关联,同时保存各所述槽与关联redis节点的关联信息;
S201,判断所述多个缓存客户端中是否有缓存客户端接收到缓存请求,所述缓存请求包括待缓存数据的键和值,若有,则执行步骤S202;
S202,获取所述待缓存数据的键对应的第一目标槽,并根据保存的所述关联信息查找所述第一目标槽对应的第一目标redis节点;
S203,将接收到所述缓存请求的所述缓存客户端对应的命名空间和实例名与所述待缓存数据的键进行拼接,并将拼接的结果作为所述待缓存数据对应的拼接键,而后将所述待缓存数据对应的拼接键和值以键值对的形式缓存至所述第一目标redis节点中。
进一步地,所述分布式缓存方法还包括以下步骤:
S301,判断所述多个缓存客户端中是否有缓存客户端接收到读取请求,所述读取请求包括待读取数据的键,若有,则执行步骤S302;
S302,获取所述待读取数据的键对应的第二目标槽,并根据保存的所述关联信息查找所述第二目标槽对应的第二目标redis节点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳壹账通智能科技有限公司,未经深圳壹账通智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910040989.1/2.html,转载请声明来源钻瓜专利网。