一种网络请求缓冲处理方法及系统与流程

文档序号:12829323阅读:197来源:国知局
一种网络请求缓冲处理方法及系统与流程

本发明涉及移动通信技术领域,尤其涉及一种网络请求缓冲处理方法及系统。



背景技术:

随着移动通信技术的飞速发展,互联网大并发请求越来越多,这对于web系统是一个巨大的考验。当一个web系统在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要。

例如:一、使用令牌桶的方式,为每个请求分配通行证书,在规定的时间段内,令牌数量有限,只有获取通信证书的请求才被允许获得处理,从而达到流量控制的目的。这样的方法不足的是:在为网络请求进行令牌分配时,造成额外的性能开销。如果后台可以承载很大并发量,那么令牌的数量也应该很多,在网络请求发生时,大量的令牌分配操作将对系统造成不小的开销,成为系统负担。二、使用异步请求的方式将网络请求进行缓存,后台异步取出缓存中的请求,然后将请求转发到核心系统进行处理,这种方式无法将核心系统的处理结果实时返回,对用户来说无法获取请求结果,造成用户体验不佳。



技术实现要素:

本发明的目的在于,提出一种能够兼顾用户体验和提高系统处理网络请求速度的网络请求缓冲处理方法,解决现有方法无法兼顾用户体验和系统性能缺陷的问题。

为了实现上述目的,本发明所采用的技术方案为:一种网络请求缓冲处理方法,包括如下步骤:

接收客户端发起的网络请求,所述网络请求携带客户端的身份信息及请求时间;

检验所述网络请求的身份信息的合法性,在验证身份信息合法后生成所述网络请求的接收信息,并存储身份信息合法的网络请求及接收信息;

设置网络请求过滤阈值,将所接收的超过过滤阈值的网络请求直接返回接收信息并存储,转发满足过滤条件的网络请求;

设置网络请求处理时限,接收并判断满足过滤条件的网络请求是否超过处理时限,向大等于处理时限的网络请求返回接收信息并存储;

接收满足过滤条件的网络请求,并依据网络请求的请求时间依序处理网络请求生成请求响应;向未返回接收信息的网络请求返回请求响应,将已返回接收信息的网络请求的请求响应存储。

其中,所述网络请求过滤条件包括请求总量阈值,将所接收的超过请求总量阈值的网络请求直接返回接收信息并存储,转发小等于请求总量阈值的网络请求。

其中,所述网络请求过滤条件还包括请求频率阈值,将所接收的超过请求频率阈值的网络请求直接返回接收信息并存储,转发小等于请求频率阈值的网络请求。

其中,接收客户端发起的网络请求之后还包括:查询是否已存在所接收的网络请求,在查询到所述网络请求时调用并返回与所述网络请求对应的请求响应。

本发明还公开一种网络请求缓冲处理系统,包括:

请求接收模块,接收客户端发起的网络请求,所述网路请求携带客户端的身份信息及请求时间;

请求缓冲模块,检验所述网络请求的身份信息的合法性,在验证身份信息合法后生成所述网络请求的接收信息,并存储验证身份信息合法的网络请求及接收信息;

流量控制模块,设置网络请求过滤阈值,将所接收的超过过滤阈值的网络请求直接返回接收信息并存储,转发满足过滤条件的网络请求;

超时计时模块,设置网络请求处理时限,接收并判断满足过滤条件的网络请求是否超过处理时限,向大等于处理时限的网络请求返回接收信息并存储;

请求处理模块,接收满足过滤条件的网络请求,并依据网络请求的请求时间依序处理网络请求生成请求响应;向未返回接收信息的网络请求返回请求响应,将已返回接收信息的网络请求的请求响应存储。

其中,所述流量控制模块包括总量控制单元,所述总量控制单元将所接收的超过请求总量阈值的网络请求直接返回接收信息并存储,转发低于请求总量阈值的网络请求。

其中,所述流量控制模块包括频率控制单元,将所接收的超过请求频率阈值的网络请求直接返回接收信息并存储,转发小等于请求频率阈值的网络请求。

其中,所述请求接收模块接收客户端发起的网络请求之后:还包括查询模块,查询是否已存在所接收的网络请求,在查询到所述网络请求时调用并返回与所述网络请求对应的请求响应。

本发明的有益效果为:

一、每一网络请求携带身份信息,在接收网络请求后通过验证身份信息的合法性检验每一网络请求,将身份信息合法的网络请求存储并排除身份信息非法的网络请求。通过身份信息的验证排除非正常的网络请求,减轻系统中请求处理模块对网络请求处理的压力,提高网络请求的处理效率。

二、将网络请求总量控制在阈值以下,超出部分直接返回接收信息,通过该方式减轻系统中请求处理模块对网络请求处理的压力,提高网络请求的处理效率。

三、将网络请求的频率控制在阈值以下,超过部分直接返回接收信息,通过该方式减轻系统中请求处理模块对网路请求处理的压力,提高网络请求的处理效率。

四、采用定时的方式设置网络请求处理时限,向大等于处理时限的网络请求返回接收信息,采用该方式能够对网络请求进行及时高效的处理。

五、本发明通过多方位控制网络请求行为,将用户集中式并发的请求通过同步或异步相结合的处理方式分批流量控制处理,最后将客户端的网络请求发送给请求处理模块,大大减小请求处理模块的系统压力,提高系统的稳定性和并发请求处理能力,提高用户体验。

附图说明

图1为本发明网络请求缓冲处理方法的流程图;

图2为本发明网络请求缓冲处理系统的结构框图。

具体实施方式

以下将结合附图所示的具体实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。

参阅图1所示,本发明的一实施方式中公开一种网络请求缓冲处理方法,包括如下步骤:

s100:接收客户端发起的网络请求,所述网络请求携带客户端的身份信息及请求时间;

具体的,每一客户端均分配一个唯一的识别码,所述识别码可以是客户端的id码或其他可标志性符号/序号。每一客户端发起网络请求的时候在网络请求中将携带所述识别码,所述识别码用于客户端身份认证,代表客户端的唯一身份信息。在接收客户端发起的网络请求之前,客户端可先进行用户注册,使得在网络请求缓冲处理系统中可先存储客户端的身份信息,方便后续进行身份验证使用。

s200:检验所述网络请求的身份信息的合法性,在验证身份信息合法后生成所述网络请求的接收信息,并存储身份信息合法的网络请求及接收信息;

在该步骤中,将所接收到的网络请求进行合法性验证,将网络请求中携带的身份信息与系统内已存储的客户端身份信息进行匹配,若系统内存在相同的身份信息则为合法身份,若系统内不存在相同的身份信息则为非法身份,接收身份合法的网络请求并放弃身份非法的网络请求。在验证身份信息合法后生成所述网络请求的接收信息,所述接收信息作为网络请求的响应信号,将网络请求及其对应的接收信息存储在redis缓存数据库中。

s300:设置网络请求过滤阈值,将所接收的超过过滤阈值的网络请求直接返回接收信息并存储,转发满足过滤条件的网络请求;

上述步骤的执行是为了滤除不符合预定要求的网络请求,将不符合预定要求的网络请求滤除后能够减轻后续对网络请求处理的压力,提高网络请求的处理效率。所述过滤阈值可以设置网络请求总量、网络请求频率、网络请求类型、网络请求时段等。针对不符合预定要求的网络请求,即超过过滤阈值的网络请求直接进行处理,返回接收信息,所返回的接收信息可以是网络请求超时、网络请求超过频率、网络请求超过请求总量等参数。所返回的接收信息可依据使用的需求设定,不仅仅局限在本实施方式所述示例。

s400:设置网络请求处理时限,接收并判断满足过滤条件的网络请求是否超过处理时限,向大等于处理时限的网络请求返回接收信息并存储;

在步骤s400中,采用定时的方式设置网络请求处理时限,将进行过滤后的网络请求设置为限时处理,优先应答大等于处理时限的网络请求返回接收信息。留下网络请求进行后续异步处理。

s500:接收满足过滤条件的网络请求,并依据网络请求的请求时间依序处理网络请求生成请求响应;向未返回接收信息的网络请求返回请求响应,将已返回接收信息的网络请求的请求响应存储。

在该过程中,将过滤阈值范围内的网络请求经过步骤s400处理后,将网络请求进行异步处理。如果网络请求的接收信息在之前被返回,则依据网络请求的身份信息将生成的请求响应存储进响应结果缓冲池中,所存储的请求响应可以供客户端下次请求时根据身份信息获取到请求响应,减少对同一网络请求再次处理,节约系统处理内存。如果网络请求未返回接收信息,则将网络请求对应的请求响应返回。

以上所述的网络请求缓冲处理方法,通过多方位控制网络请求行为,将用户集中式并发的请求通过同步或异步相结合的处理方式分批流量控制处理,最后将客户端的网络请求发送给请求处理模块,大大减小后台的系统压力,提高系统的稳定性和并发请求处理能力,提高用户体验。

在一改进的实施方式中,所述网络请求过滤条件包括请求总量阈值,将所接收的超过请求总量阈值的网络请求直接返回接收信息并存储,转发小等于请求总量阈值的网络请求。采用该方式,实现了网络请求总量的控制,将大于总量阈值的网络请求丢弃,并向客户端返回接收信息。在该过程中,所返回的接收信息可以是网络请求超总量、网络请求失败等提示信息,将小等于总量阈值的网络请求转发进行后续处理。将网络请求的总量控制在阈值以下,超出部分直接返回接收信息,避免后续对超过总量阈值的网络请求进行处理,通过该方式减轻系统中请求处理模块对网络请求处理的压力,提高网络请求的处理效率。

在又一改进的实施方式中,所述网络请求过滤条件还包括请求频率阈值,将所接收的超过请求频率阈值的网络请求直接返回接收信息并存储,转发小等于请求频率阈值的网络请求。该实施方式将网络请求的频率控制在阈值以下,超过部分直接返回接收信息,避免后续对超过频率阈值的网络请求进行处理,通过该方式减轻系统中请求处理模块对网络请求处理的压力,提高网络请求的处理效率。所返回的接收信息可以是:网络请求太频繁、网络请求失败等提示信息。

在又一改进的实施方式中,所述的网络请求缓冲处理方法,接收客户端发起的网络请求之后还包括:查询是否已存在所接收的网络请求,在查询到所述网络请求时调用并返回与所述网络请求对应的请求响应。采用该方式依据网络请求的身份信息进行网络请求查询,从响应结果缓冲池中查询是否存在该身份信息对应的请求响应,若不存在则执行后续步骤,若存在该身份信息对应的请求响应,则直接从所述结果缓冲池中获取请求响应。采用该方式减少对同一网络请求再次处理,节约系统处理内存,提高网络请求处理效率。

参阅图2所示,本发明的一实施方式中还公开一种网络请求缓冲处理系统,所述的网络请求缓冲处理系统需要部署在客户端和后台服务网络之间,该系统作为后台服务的插件,能够缓解后台服务器的压力。所述系统的数据库应该选用高速的内存型数据库,能够进行原子性逻辑操作,此类型数据库会占用大量内存资源,需要较为强劲的服务器配置或采用分布式的方式部署。处理服务器可以根据实际场景,采用分布式部署,提高系统的性能。

所述网络请求缓冲处理系统包括:

请求接收模块,接收客户端发起的网络请求,所述网路请求携带客户端的身份信息及请求时间;所述请求接收模块作为http接收器,其接收客户端的http请求。每一客户端均分配一个唯一的识别码,所述识别码可以是客户端的id码或其他可标志性符号/序号。每一客户端发起网络请求的时候在网络请求中携带所述识别码,所述识别码用于客户端身份认证,代表客户端的唯一身份信息。在接收客户端发起的网络请求之前,客户端可先进行用户注册,使得网络请求缓冲处理系统中可先存储客户端的身份信息,方便后续进行身份验证使用。

请求缓冲模块,检验所述网络请求的身份信息的合法性,在验证身份信息合法后生成所述网络请求的接收信息,并存储验证身份信息合法的网络请求及接收信息;将所接收的网络请求进行合法性验证,将网络请求中携带的身份信息与系统内已存储的客户端身份信息进行匹配,若系统内存在相同的身份信息则为合法身份,若系统内不存在相同的身份信息则为非法身份,接收身份合法的网络请求并放弃身份非法的网络请求。在验证身份信息合法后生成所述网络请求的接收信息,所述接收信息作为网络请求的响应信号,将网络请求及其对应的接收信息存储在redis缓存数据库中,redis缓存数据库作为http缓冲池,这是一种内存型高速存储系统,保证http网络请求处理的速度。

流量控制模块,设置网络请求过滤阈值,将所接收的超过过滤阈值的网络请求直接返回接收信息并存储,转发满足过滤条件的网络请求;所述流量控制模块可以采用流量控制器,流量控制器能够滤除不符合预定要求的网络请求,将不符合预定要求的网络请求滤除后能够减轻后续对网络请求处理的压力,提高网络请求的处理效率。所述过滤阈值可以设置网络请求总量、网络请求频率、网络请求类型、网络请求时段等。针对不符合预定要求的网络请求,即超过过滤阈值的网络请求直接进行处理,返回接收信息,所返回的接收信息可以是网络请求超时、网络请求超过频率、网络请求超过请求总量等参数。所返回的接收信息可依据使用的需求设定,不仅仅局限在本实施方式所述示例。

超时计时模块,设置网络请求处理时限,接收并判断满足过滤条件的网络请求是否超过处理时限,向大等于处理时限的网络请求返回接收信息并存储;所述超时计时模块可采用超时计时器,采用定时的方式设置网络请求处理时限,将进行过滤后的网络请求设置为限时处理,优先应答大等于处理时限的网络请求返回接收信息,留下网络请求进行后续异步处理,所留下的网络请求可存储在http待处理缓冲池中。

请求处理模块,接收满足过滤条件的网络请求,并依据网络请求的请求时间依序处理网络请求生成请求响应;向未返回接收信息的网络请求返回请求响应,将已返回接收信息的网络请求的请求响应存储。在该过程中,将过滤阈值范围内的网络请求采用限时处理后,将网络请求进行异步处理。如果网络请求的接收信息在之前被返回,则依据网络请求的身份信息将生成的请求响应存储进响应结果缓冲池中,所存储的请求响应可以供客户端下次请求时根据身份信息获取到请求响应,减少对同一网络请求再次处理,节约系统处理内存。如果网络请求未返回接收信息,则将网络请求对应的请求响应返回。将所生成的所有请求响应全部放入结果寄存器中,供客户端下次发起网络请求时直接调用。结果寄存器应用使用redis这类内存型高速存储系统,保证http网络请求快速响应。

所述的网络请求缓冲处理系统,所述流量控制模块包括总量控制单元,所述总量控制单元将所接收的超过请求总量阈值的网络请求直接返回接收信息并存储,转发低于请求总量阈值的网络请求。通过总量控制单元,实现了网络请求总量的控制,将大于总量阈值的网络请求丢弃,并向客户端返回接收信息。在该过程中,所返回的接收信息可以是网络请求超总量、网络请求失败等提示信息,将小等于总量阈值的网络请求转发进行后续处理。将网络请求的总量控制在阈值以下,超出部分直接返回接收信息,避免后续对超过总量阈值的网络请求进行处理,通过该方式减轻系统中请求处理模块对网络请求处理的压力,提高网络请求的处理效率。

所述的网络请求缓冲处理系统,所述流量控制模块包括频率控制单元,将所接收的超过请求频率阈值的网络请求直接返回接收信息并存储,转发小等于请求频率阈值的网络请求。通过频率控制单元将网络请求的频率控制在阈值以下,超过部分直接返回接收信息,避免后续对超过频率阈值的网络请求进行处理,通过该方式减轻系统中请求处理模块对网络请求处理的压力,提高网络请求的处理效率。所返回的接收信息可以是:网络请求太频繁、网络请求失败等提示信息。

所述的网络请求缓冲处理系统,所述请求接收模块接收客户端发起的网络请求之后:还包括查询模块,查询是否已存在所接收的网络请求,在查询到所述网络请求时调用并返回与所述网络请求对应的请求响应。所述查询模块依据网络请求的身份信息进行网络请求查询,从响应结果缓冲池中查询是否存在该身份信息对应的请求响应,若不存在则执行后续步骤,若存在该身份信息对应的请求响应,则直接从所述结果缓冲池中获取请求响应。采用该方式减少对同一网络请求再次处理,节约系统处理内存,提高网络请求处理效率。

上述实施方式,通过多方位控制网络请求行为,将用户集中式并发的请求通过同步或异步相结合的处理方式分批流量控制处理,最后将客户端的网络请求发送给请求处理模块,大大减小请求处理模块的系统压力,提高系统的稳定性和并发请求处理能力,提高用户体验。

应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1