用于分布式缓存系统的键值对数据操作方法和装置制造方法及图纸

技术编号:12730758 阅读:135 留言:0更新日期:2016-01-20 14:37
本申请公开了用于分布式缓存系统的键值对数据操作方法和装置。所述键值对数据操作方法的一具体实施方式包括:接收第一键值对数据操作请求,第一键值对数据操作请求为对至少两个第一键值对数据进行操作的请求;将第一键值对数据操作请求拆分为预定数量个第二键值对数据操作请求,其中,预定数量小于第一键值对数据的数量,第二键值对数据操作请求包括对至少一个第二键值对数据进行操作的请求;将各个第二键值对数据操作请求分别发送到分布式缓存系统所包括的至少一个缓存服务器中的一个;接收各个缓存服务器发送的操作结果;将接收到的操作结果发送到第一键值对数据操作请求的发送端。该实施方式加快了对多个键值对数据进行操作的请求的处理速度。

【技术实现步骤摘要】

本申请涉及计算机
,具体涉及分布式缓存
,尤其涉及用于分布式缓存系统的键值对数据操作方法和装置
技术介绍
在分布式缓存(Cache)系统中,在客户端和缓存服务器之间通常设有一个代理服务器(Proxy)。对于同时对多个键值对数据进行操作的情况,现有技术的实现方法是:代理服务器将客户端发送的一个对多个键值对数据进行操作的请求拆分为多个单键值对操作请求;将上述多个单键值对操作请求发往缓存服务器;然后在获取到每个单键值对操作请求对应的操作结果后,将接收到的操作结果进行合并,并将合并后的操作结果发送到客户端。然而,在客户端发送的操作请求为对大量键值对数据进行操作的请求的情况下,采用现有技术的方案,会导致代理服务器的计算负载过高,从而使分布式缓存系统对这类操作请求的处理速度较慢。
技术实现思路
本申请的目的在于提出一种用于分布式缓存系统的键值对数据操作方法和装置,来解决以上
技术介绍
部分提到的技术问题。第一方面,本申请提供了一种用于分布式缓存系统的键值对数据操作方法,所述方法包括:接收第一键值对数据操作请求,所述第一键值对数据操作请求为对至少两个第一键值对数据进行操作的请求;将所述第一键值对数据操作请求拆分为预定数量个第二键值对数据操作请求,其中,所述预定数量小于所述第一键值对数据的数量,所述第二键值对数据操作请求包括对至少一个第二键值对数据进行操作的请求,各个第二键值对数据为各个第一键值对数据中的一个;将各个第二键值对数据操作请求分别发送到所述分布式缓存系统所包括的至少一个缓存服务器中的一个;接收各个缓存服务器发送的操作结果,所述操作结果为所述缓存服务器根据所收到的第二键值对数据操作请求进行操作后得到的结果;将接收到的所述操作结果发送到所述第一键值对数据操作请求的发送端。在一些实施例中,所述将所述第一键值对数据操作请求拆分为预定数量个第二键值对数据操作请求,包括:建立所述预定数量个队列;根据所述第一键值对数据的键Key的哈希结果,将与所述第一键值对数据操作请求对应的对各个第一键值对数据进行操作的各个请求分发到不同的所述队列,生成数量与所述队列数量相同的第二键值对数据操作请求,其中,所述哈希结果为根据所述Key通过预定的哈希算法得到的结果。在一些实施例中,所述哈希算法为取模算法,其中,所述取模算法中的除数为所述预定数量。在一些实施例中,所述将接收到的所述操作结果发送到所述第一键值对数据操作请求的发送端,包括:将接收到的各个操作结果合并为操作结果集合;将所述操作结果集合发送到所述发送端。在一些实施例中,所述预定数量为所述分布式缓存系统中缓存服务器的数量。在一些实施例中,所述建立预定数量个队列包括:根据所述分布式缓存系统中缓存服务器的数量,建立相应数量的队列,其中,各个队列与各个缓存服务器一一对应。在一些实施例中,所述将各个第二键值对数据操作请求分别发送到所述分布式缓存系统所包括的至少一个缓存服务器中的一个,包括:将各个第二键值对数据操作请求分别发送到所在队列所对应的缓存服务器。第二方面,本申请提供了一种用于分布式缓存系统的键值对数据操作装置,所述装置包括:操作请求接收单元,用于接收第一键值对数据操作请求,所述第一键值对数据操作请求为对至少两个第一键值对数据进行操作的请求;操作请求拆分单元,用于将所述第一键值对数据操作请求拆分为预定数量个第二键值对数据操作请求,其中,所述预定数量小于所述第一键值对数据的数量,所述第二键值对数据操作请求包括对至少一个第二键值对数据进行操作的请求,各个第二键值对数据为各个第一键值对数据中的一个;操作请求发送单元,用于将各个第二键值对数据操作请求分别发送到所述分布式缓存系统所包括的至少一个缓存服务器中的一个;操作结果接收单元,用于接收各个缓存服务器发送的操作结果,所述操作结果为所述缓存服务器根据所收到的第二键值对数据操作请求进行操作后得到的结果;操作结果发送单元,用于将接收到的所述操作结果发送到所述第一键值对数据操作请求的发送端。在一些实施例中,所述操作请求拆分单元包括:队列建立子单元,用于建立所述预定数量个队列;队列分配子单元,用于根据所述第一键值对数据的键Key的哈希结果,将与所述第一键值对数据操作请求对应的对各个第一键值对数据进行操作的各个请求分发到不同的所述队列,生成数量与所述队列数量相同的第二键值对数据操作请求,其中,所述哈希结果为根据所述Key通过预定的哈希算法得到的结果。在一些实施例中,所述哈希算法为取模算法,其中,所述取模算法中的除数为所述预定数量。在一些实施例中,所述操作结果发送单元包括:操作结果合并子单元,用于将接收到的各个操作结果合并为操作结果集合;操作结果集合发送子单元,用于将所述操作结果集合发送到所述发送端。在一些实施例中,所述预定数量为所述分布式缓存系统中缓存服务器的数量。在一些实施例中,所述队列建立子单元进一步配置用于根据所述分布式缓存系统中缓存服务器的数量,建立相应数量的队列,其中,各个队列与各个缓存服务器一一对应。在一些实施例中,所述操作请求发送单元进一步配置用于将各个第二键值对数据操作请求分别发送到所在队列所对应的缓存服务器。本申请提供的用于分布式缓存系统的键值对数据操作方法和装置,通过将第一键值对数据操作请求拆分为小于第一键值对数据的数量的预定数量个第二键值对数据操作请求,减少了代理服务器需处理的操作数量,从而降低了代理服务器的计算负载,加快了分布式缓存系统对多个键值对数据进行操作的请求的处理速度。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1是本申请可以应用于其中的示例性系统架构图;图2是根据本申请的用于分布式缓存系统的键值对数据操作方法的一个实施例的流程图;图3是根据本申请的用于分布式缓存系统的键值对数据操作方法的一些数据处理的一个示例性示意图;图4是根据本申请的本申请的用于分布式缓存系统的键值对数据操作方法的另一些数据处理的一个示例性示意图;图5是根据本申请的用于分布式缓存系统的键值对数据操作装置的一个实施例的结构示意图;图6是适于用来实现本申请实施例的终端设备、代理服务器或缓存服务器的计算机系统的结构示意图。具体实施方式下面结合附本文档来自技高网...

【技术保护点】
一种用于分布式缓存系统的键值对数据操作方法,其特征在于,所述方法包括:接收第一键值对数据操作请求,所述第一键值对数据操作请求为对至少两个第一键值对数据进行操作的请求;将所述第一键值对数据操作请求拆分为预定数量个第二键值对数据操作请求,其中,所述预定数量小于所述第一键值对数据的数量,所述第二键值对数据操作请求包括对至少一个第二键值对数据进行操作的请求,各个第二键值对数据为各个第一键值对数据中的一个;将各个第二键值对数据操作请求分别发送到所述分布式缓存系统所包括的至少一个缓存服务器中的一个;接收各个缓存服务器发送的操作结果,所述操作结果为所述缓存服务器根据所收到的第二键值对数据操作请求进行操作后得到的结果;将接收到的所述操作结果发送到所述第一键值对数据操作请求的发送端。

【技术特征摘要】
1.一种用于分布式缓存系统的键值对数据操作方法,其特征在于,
所述方法包括:
接收第一键值对数据操作请求,所述第一键值对数据操作请求为对
至少两个第一键值对数据进行操作的请求;
将所述第一键值对数据操作请求拆分为预定数量个第二键值对数据
操作请求,其中,所述预定数量小于所述第一键值对数据的数量,所述
第二键值对数据操作请求包括对至少一个第二键值对数据进行操作的请
求,各个第二键值对数据为各个第一键值对数据中的一个;
将各个第二键值对数据操作请求分别发送到所述分布式缓存系统所
包括的至少一个缓存服务器中的一个;
接收各个缓存服务器发送的操作结果,所述操作结果为所述缓存服
务器根据所收到的第二键值对数据操作请求进行操作后得到的结果;
将接收到的所述操作结果发送到所述第一键值对数据操作请求的发
送端。
2.根据权利要求1所述的方法,其特征在于,所述将所述第一键值
对数据操作请求拆分为预定数量个第二键值对数据操作请求,包括:
建立所述预定数量个队列;
根据所述第一键值对数据的键Key的哈希结果,将与所述第一键值
对数据操作请求对应的对各个第一键值对数据进行操作的各个请求分发
到不同的所述队列,生成数量与所述队列数量相同的第二键值对数据操
作请求,其中,所述哈希结果为根据所述Key通过预定的哈希算法得到
的结果。
3.根据权利要求2所述的方法,其特征在于,所述哈希算法为取模
算法,其中,所述取模算法中的除数为所述预定数量。
4.根据权利要求1所述的方法,其特征在于,所述将接收到的所述

\t操作结果发送到所述第一键值对数据操作请求的发送端,包括:
将接收到的各个操作结果合并为操作结果集合;
将所述操作结果集合发送到所述发送端。
5.根据权利要求1-4任一所述的方法,其特征在于,所述预定数量
为所述分布式缓存系统中缓存服务器的数量。
6.根据权利要求5所述的方法,其特征在于,所述建立预定数量个
队列包括:
根据所述分布式缓存系统中缓存服务器的数量,建立相应数量的队
列,其中,各个队列与各个缓存服务器一一对应。
7.根据权利要求6所述的方法,其特征在于,所述将各个第二键值
对数据操作请求分别发送到所述分布式缓存系统所包括的至少一个缓存
服务器中的一个,包括:
将各个第二键值对数据操作请求分别发送到所在队列所对应的缓存
服务器。
8.一种用于分布式缓存系统的键...

【专利技术属性】
技术研发人员:张东阳
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利