一种数据处理方法和装置制造方法及图纸

技术编号:11766421 阅读:91 留言:0更新日期:2015-07-23 18:18
本发明专利技术提供了一种数据处理方法和装置,其中,所述方法包括:通过计数代理实体接收客户端发送的计数请求指令;所述计数请求指令包括数据的类型和数据的计数数量;利用所述计数代理实体根据所述计数请求指令中的数据的计数数量执行计数操作;通过所述计数代理实体判断计数结果是否满足计数转移条件;当满足时,利用计数转移实体发送计数增加指令到计数服务器,以令所述计数服务器根据所述计数增加指令进行数据处理;所述计数增加指令包括数据的类型和数据的增加数量。本发明专利技术通过在客户端和Redis等内存数据库之间增加中间层代理的方式,使得Redis等内存数据库在被用于高并发计数这个应用场景下,能够满足性能要求。

【技术实现步骤摘要】

本专利技术涉及互联网
,特别是涉及一种数据处理方法和装置
技术介绍
Redis是一款知名的内存数据库,它的优势是运行稳定、性能良好和接口丰富。但最大的问题是,目前只支持单点写入数据。而且,其架构是单进程单线程的。这意味着在负载达到一定程度时,无论CPU上有几个核心,Redis总会表现出计算瓶颈,因为它最多只能使用其中的一个核心。事实上,在现行硬件条件下,当负载超过每秒10万次操作时,Redis已经表现出严重的性能瓶颈。这导致在一些高并发的应用场景下,Redis等内存数据库不能满足性能需要。
技术实现思路
本专利技术提供一种数据处理方法和装置,以解决在一些高并发的应用场景下,Redis等内存数据库性能低的问题。为了解决上述问题,本专利技术公开了一种数据处理方法,包括:通过计数代理实体接收客户端发送的计数请求指令;所述计数请求指令包括数据的类型和数据的计数数量;利用所述计数代理实体根据所述计数请求指令中的数据的计数数量执行计数操作;通过所述计数代理实体判断计数结果是否满足计数转移条件;当满足时,利用计数转移实体发送计数增加指令到计数服务器,以令所述计数服务器根据所述计数增加指令进行数据处理;所述计数增加指令包括数据的类型和数据的增加数量。优选地,所述通过所述计数代理实体判断计数结果是否满足计数转移条件,包括:通过所述计数代理实体判断当前计数数值是否大于等于预设阈值,和/或,计数转移频次是否大于等于预设门限;当当前计数数值大于等于预设阈值,和/或,计数转移频次大于等于预设门限时,确定计数结果满足计数转移条件;当当当前计数数值小于预设阈值,和/或,计数转移频次小于预设门限时,确定计数结果不满足计数转移条件。优选地,所述方法还包括:在利用计数转移实体发送计数增加指令到计数服务器的同时,通过所述计数转移实体发送计数减少指令至所述计数代理实体;所述计数减少指令包括数据的类型和数据的减少数量;通过所述计数代理实体根据所述计数减少指令中的数据的类型和数据的减少数量,减少数据的数量。优选地,所述计数增加指令中的数据的增加数量与所述计数减少指令中的数据的减少数量相等。优选地,所述通过计数代理实体接收客户端发送的计数请求指令之前,所述方法还包括:选择与所述计数请求指令中的数据的类型对应的计数代理实体。相应地,本专利技术还公开了一种数据处理装置,包括:计数代理模块,用于接收客户端发送的计数请求指令;所述计数请求指令包括数据的类型和数据的计数数量;所述计数代理模块,还用于根据所述计数请求指令中的数据的计数数量执行计数操作;所述计数代理模块,还用于判断计数结果是否满足计数转移条件;计数转移模块,用于当计数结果满足计数转移条件时,发送计数增加指令到计数服务器,以令所述计数服务器根据所述计数增加指令进行数据处理;所述计数增加指令包括数据的类型和数据的增加数量。优选地,所述计数代理模块,包括:判断模块,用于判断当前计数数值是否大于等于预设阈值,和/或,计数转移频次是否大于等于预设门限;确定模块,用于当当前计数数值大于等于预设阈值,和/或,计数转移频次大于等于预设门限时,确定计数结果满足计数转移条件;当当当前计数数值小于预设阈值,和/或,计数转移频次小于预设门限时,确定计数结果不满足计数转移条件。优选地,所述计数转移模块,还用于在发送计数增加指令到计数服务器的同时,发送计数减少指令至所述计数代理模块;所述计数减少指令包括数据的类型和数据的减少数量;所述计数代理模块,还用于根据所述计数减少指令中的数据的类型和数据的减少数量,减少数据的数量。优选地,所述计数增加指令中的数据的增加数量与所述计数减少指令中的数据的减少数量相等。优选地,还包括:选择模块,用于在所述计数代理模块接收客户端发送的计数请求指令之前,选择与所述计数请求指令中的数据的类型对应的计数代理模块。与
技术介绍
相比,本专利技术包括以下优点:本专利技术技术方案利用计数代理实体接收客户端发送的计数请求指令,并根据计数请求指令中的数据的计数数量执行计数操作;通过计数代理实体判断计数结果是否满足计数转移条件;当满足时,利用计数转移实体发送计数增加指令到计数服务器,以令计数服务器根据计数增加指令进行数据处理。通过在客户端和Redis等内存数据库之间增加包括计数代理实体和技术转移实体在内的中间层代理的方式,使得Redis等内存数据库在被用于高并发计数这个应用场景下,能够满足性能要求。【附图说明】图1是本专利技术技术方案的系统框图;图2是本专利技术实施例一中的一种数据处理方法的步骤流程图;图3是本专利技术实施例二中的一种数据处理方法的步骤流程图;图4是本专利技术实施例三中的一种数据处理方法的步骤流程图;图5是本专利技术实施例四中的一种数据处理装置的结构示意图;图6是本专利技术实施例五中的一种数据处理装置的结构示意图;图7是本专利技术实施例六中的一种数据处理系统的结构示意图。【具体实施方式】为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本专利技术作进一步详细的说明。本专利技术技术方案针对Redis等主节点的单点性能瓶颈问题,采用增加中间层代理的方式,来代替主节点接受并处理来自客户端的请求。中间层代理先将处理后的结果进行一定的汇总,然后再发送给Redis等主节点。这样主节点的工作角色,从与客户端直接对话,变为了和中间层代理对话,而与客户端间接对话。本专利技术技术方案的系统框图如图1所示,每个客户端可以与各自对应的中间层代理相连接,各中间层代理与Redis主节点相连接。下面通过列举几个具体的实施例详细介绍本专利技术提供的一种数据处理方法和装置。实施例一详细介绍本专利技术实施例提供的一种数据处理方法。参照图2,示出了本专利技术实施例中一种数据处理方法的步骤流程图。步骤100,通过计数代理实体接收客户端发送的计数请求指令。所述计数代理实体可以为实当前第1页1 2 3 4 本文档来自技高网
...

【技术保护点】
一种数据处理方法,其特征在于,包括:通过计数代理实体接收客户端发送的计数请求指令;所述计数请求指令包括数据的类型和数据的计数数量;利用所述计数代理实体根据所述计数请求指令中的数据的计数数量执行计数操作;通过所述计数代理实体判断计数结果是否满足计数转移条件;当满足时,利用计数转移实体发送计数增加指令到计数服务器,以令所述计数服务器根据所述计数增加指令进行数据处理;所述计数增加指令包括数据的类型和数据的增加数量。

【技术特征摘要】

【专利技术属性】
技术研发人员:牟盖东
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京;11

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

1