一种信息拦截处理方法以及装置与流程

文档序号:12376778阅读:251来源:国知局
一种信息拦截处理方法以及装置与流程

本发明涉及互联网技术领域,尤其涉及一种信息拦截处理方法以及装置。



背景技术:

随着互联网技术的发展,用户的业务访问信息量将会变得越来越大,为了更好的管控大量的业务访问,前端服务器通常需要对访问频次过高的客户端账号或客户端IP(Internet Protocol,网络协议)地址进行访问拦截处理。目前的访问拦截处理方式具体为:前端服务器每获取到一次业务访问,就将该业务访问通过一次RPC(Remote Procedure Call,远程过程调用)上报到拦截后台服务器,并同步等待拦截后台服务器统计后返回拦截指示信息,前端服务器再根据拦截指示信息判断是否对当次获取到的业务访问进行拦截。由于在目前的访问拦截处理方式中,每次的业务访问都需要进行一次RPC上报,所以当存在海量的业务访问时将会导致拦截后台服务器的负载压力过大;而且由于需要同步等待拦截后台服务器返回拦截指示信息,且当存在海量的业务访问时将会导致RPC的延迟过高,所以将会降低对业务访问的拦截处理效率。



技术实现要素:

本发明实施例提供一种信息拦截处理方法以及装置,可以降低拦截后台服务器的负载压力,并提高对业务访问的拦截处理效率。

本发明实施例提供了一种信息拦截处理方法,包括:

检测预设的共享内存中的上报队列对应的队列属性参数;所述上报队列是用于存储客户端上报的业务访问信息,且所述业务访问信息包含本地分配的拦截规则序号;

当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息;

通过所述拦截代理服务获取所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。

相应地,本发明实施例还提供了一种信息拦截处理装置,包括:

检测模块,用于检测预设的共享内存中的上报队列对应的队列属性参数;所述上报队列是用于存储客户端上报的业务访问信息,且所述业务访问信息包含本地分配的拦截规则序号;

拦截代理服务模块,用于当所述队列属性参数满足预设上报条件时,将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息;

所述拦截代理服务模块,还用于获取所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。

本发明实施例通过检测预设的共享内存中的上报队列对应的队列属性参数,并当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器生成多个拦截指示信息,再通过所述拦截代理服务获取所述拦截后台服务器中的所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种网络架构的示意图;

图2是本发明实施例提供的一种信息拦截处理方法的流程示意图;

图2a是本发明实施例提供的一种信息拦截处理系统的结构示意图;

图3是本发明实施例提供的另一种信息拦截处理方法的流程示意图;

图3a是本发明实施例提供的另一种信息拦截处理系统的结构示意图;

图4是本发明实施例提供的又一种信息拦截处理方法的流程示意图;

图4a是本发明实施例提供的又一种信息拦截处理系统的结构示意图;

图5是本发明实施例提供的一种信息拦截处理装置的结构示意图;

图6是本发明实施例提供的另一种信息拦截处理装置的结构示意图;

图7是本发明实施例提供的又一种信息拦截处理装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参见图1,是本发明实施例提供的一种网络架构的示意图。如图1所示,该网络架构可以包括拦截后台服务器和多个前端服务器,所示拦截后台服务器可以通过互联网与多个前端服务器进行通信连接。本发明实施例中,每个前端服务器均可以将获取到的多个业务访问信息先进行存储,再周期性的将所存储的多个业务访问信息上报给所述拦截后台服务器;所述拦截后台服务器可以根据各个前端服务器所上报的多个业务访问信息以及相关的拦截规则生成多个拦截指示信息,并将所述多个拦截指示信息分别发送给各个前端服务器,使得每个前端服务器均可以根据自身的业务访问信息所对应的拦截规则在所述多个拦截指示信息中选择出自身需要使用到的目标拦截指示信息,因此,各个前端服务器均可以根据自身选择出的目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,每个前端服务器在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

请参见图2,是本发明实施例提供的一种信息拦截处理方法的流程示意图,所述方法可以包括:

S201,检测预设的共享内存中的上报队列对应的队列属性参数;所述上报队列是用于存储客户端上报的业务访问信息,且所述业务访问信息包含本地分配的拦截规则序号;

具体的,以上述图1所示的任意一个前端服务器为例,所述前端服务器可以包括业务逻辑服务进程,所述业务逻辑服务进程可以负责接收多个客户端上传的业务访问信息,所述业务逻辑服务进程还可以为所述业务访问信息分配相应的拦截规则序号,并将已分配的拦截规则序号添加在所述业务访问信息中。其中,所述拦截规则序号对应的拦截规则是由拦截后台服务器预先设置好的,且所述前端服务器和所述拦截后台服务器均可以预先得知每个拦截规则分别对应的拦截规则序号。例如,某业务访问信息对应的客户端IP地址为“XXX”,那么所述业务逻辑服务所分配的拦截规则序号可以为3,而拦截规则序号为3的拦截规则具体可以为:当为“XXX”的客户端IP地址对应的访问频次超过100时,对与客户端IP地址为“XXX”对应的业务访问信息进行拦截。因此,当所述前端服务器将携带拦截规则序号的业务访问信息上报给所述拦截后台服务器时,所述拦截后台服务器可以根据所述拦截规则序号得知所述业务访问信息对应的拦截规则。

所述前端服务器可以预先设置一段共享内存以及拦截代理服务,通过所述共享内存可以使所述业务逻辑服务进程与拦截代理服务中的上报进程实现数据通信。所述业务逻辑服务进程可以将获取到的且包含本地分配的拦截规则序号的业务访问信息存储到所述共享内存中的上报队列中,并将获取到的业务访问信息对应的所述本地分配的拦截规则序号存储到所述共享内存中的拦截规则序号记录库中。所述前端服务器还可以实时检测上报队列对应的队列属性参数,所述队列属性参数可以包括队列存储时间和已存储的业务访问信息数量,所述队列存储时间可以为所述上报队列触发上报操作后所累计的时间。所述前端服务器可以进一步判断所述队列存储时间是否满足预设的上报时间周期,若判断为满足所述上报时间周期,则确定所述队列属性参数满足预设上报条件,否则,确定所述队列属性参数不满足预设上报条件。例如,若所述上报时间周期为1秒,则所述上报队列触发上报操作后所累计的时间达到1秒时,即可触发上报操作(即所述上报队列每隔1秒上报一次所存储的所有业务访问信息到所述上报进程)。或者,所述前端服务器可以判断所述已存储的业务访问信息数量是否达到预设的信息数量阈值,若判断为达到所述信息数量阈值,则确定所述队列属性参数满足预设上报条件,否则,确定所述队列属性参数不满足预设上报条件。例如,若所述信息数量阈值为1000,则所述上报队列所存储的业务访问信息的数量达到1000时,即可触发上报操作(即所述上报队列每存储1000条业务访问信息就上报一次所存储的所有业务访问信息到所述上报进程)。

其中,所述上报队列可以为多写单读类型,并只有在对所述上报队列进行push操作(即将业务访问信息写入所述上报队列的操作)时才加CAS(Compare and swap,比较与交换)锁,而对所述上报队列进行pop操作(即从所述上报队列提取出业务访问信息的操作)时无需加锁,以提高所述上报队列的性能。

S202,当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息;

具体的,当确定出所述队列属性参数满足预设上报条件时,所述前端服务器可以通过所述拦截代理服务中的所述上报进程提取所述上报队列中的所有业务访问信息(提取后的所述上报队列中不存在业务访问信息,以便于后续继续存储新获取到的业务访问信息),并将所有业务访问信息统一上报至拦截后台服务器。所述拦截后台服务器可以包括访问频率统计服务进程,所述访问频率统计服务进程可以接收所述前端服务器上报的业务访问信息,同时也可以接收其他的前端服务器上报的业务访问信息(即可以存在多台前端服务器与所述拦截后台服务器通信连接,各前端服务器中的上报进程均可以将各自的上报队列中的所有业务访问信息上报至所述拦截后台服务器),所述访问频率统计服务进程可以根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息。例如,所述访问频率统计服务进程将各前端服务器上报的业务访问信息汇总后,得到500条业务访问信息,其中,300条业务访问信息包含拦截规则序号1,120条业务访问信息包含拦截规则序号3,80条业务访问信息包含拦截规则序号4(其中,拦截规则序号1对应拦截规则A,拦截规则序号3对应拦截规则B,拦截规则序号4对应拦截规则C),若各前端服务器的上报进程的上报时间周期均为1秒,则可以确定拦截规则A对应的客户端IP地址的访问频次为300,拦截规则B对应的客户端IP地址的访问频次为120,拦截规则C对应的客户端IP地址的访问频次为80,而拦截规则A中的访问频次阈值为200,拦截规则B中的访问频次阈值为100,拦截规则C中的访问频次阈值为100,则可以根据拦截规则A生成对应的拦截指示信息a,并根据拦截规则B生成对应的拦截指示信息b,其中,所述拦截指示信息a是用于对拦截规则A对应的客户端IP地址进行拦截的指令信息,所述拦截指示信息b是用于对拦截规则B对应的客户端IP地址进行拦截的指令信息。当然,本发明实施中的所述拦截规则并不仅限定为是基于客户端IP地址的访问频次的拦截规则,所述拦截规则也可以是基于用户账号的访问频次的拦截规则,或者是基于其他维度的访问频次的拦截规则。

S203,通过所述拦截代理服务获取所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理;

具体的,所述前端服务器可以通过所述拦截代理服务获取所述拦截后台服务器所生成的所述多个拦截指示信息,并将所述多个拦截指示信息存储在所述拦截代理服务中。所述前端服务器还同时在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,如可以将最近5分钟内存储在所述拦截规则序号记录库中的拦截规则序号确定为目标拦截规则序号。所述前端服务器可以进一步在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息(由于拦截指示信息与拦截规则相关联,所以可以基于所述目标拦截规则序号对应的拦截规则选择出相关联的目标拦截指示信息),并将所述目标拦截指示信息存储到所述共享内存中的本地拦截指示信息库,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。其中,由于所述拦截后台服务器所生成的多个拦截指示信息是基于多个前端服务器所上报的业务访问信息所生成的,因此,对于其中一个前端服务器,为了提高前端服务器的拦截处理效率,则可以基于所述目标拦截规则序号从所述多个拦截指示信息中筛选出与本前端服务器近期所获取到的业务访问信息相关联的目标拦截指示信息,而所述多个拦截指示信息中除了目标拦截指示信息以外的其他拦截指示信息并不是本前端服务器最近需要用到的拦截指示信息,所以本前端服务器在后续获取到新业务访问信息时,可以仅基于所述目标拦截指示信息来判定所述新业务访问信息是否需要拦截,以提高拦截处理效率。例如,所述拦截后台服务器生成了1000条拦截指示信息,而某前端服务器基于所述目标拦截规则序号选择出的目标拦截指示信息只有50条,这50条目标拦截指示信息也是该前端服务器近期所需要用到的拦截指示信息,所以该前端服务器基于这50条目标拦截指示信息进行拦截处理相比于基于1000条拦截指示信息进行拦截的处理效率要高很多。

其中,所述本地拦截指示信息库是使用Hashmap(哈希映射)结构,且属于单写多读类型,由于所述本地拦截指示信息库对实时一致性要求不高,因此,读写均无需加锁,以提高所述本地拦截指示信息库的性能。而且,每一条拦截指示信息(包括目标拦截指示信息)均具有一定长度的生命周期,以保证所述本地拦截指示信息库中长时间未使用到的目标拦截指示信息可以自动失效,以避免因所述本地拦截指示信息库中存在长时间未使用到的目标拦截指示信息而造成误拦截(因为对于长时间未使用到的目标拦截指示信息所关联的业务访问信息可以再次恢复访问权限,即可以暂时不对这类业务访问信息进行拦截,直至对应的访问频次再次超限时再重新进行拦截)。而且由于所述上报进程可以周期性上报所述上报队列中的所有业务访问信息到所述拦截后台服务器,从而也可以周期性获取所述拦截后台服务器所生成的多个拦截指示信息,进而可以根据周期性生成的多个拦截指示信息以及周期性获取到的目标拦截规则序号,周期性的更新所述本地拦截指示信息库中的目标拦截指示信息,基于不断更新后的目标拦截指示信息,可以保证对后续的新业务访问信息进行拦截处理的拦截准确率,即避免造成漏拦截的情况发生。

可选的,若前端服务器的数量不多,则所述拦截后台服务器所生成的拦截指示信息的数量与各前端服务器近期所需要用到的拦截指示信息的数量相差不大,此时,可以将所述拦截后台服务器所生成的多个拦截指示信息全都存储到所述共享内存中的本地拦截指示信息库中,以便于后续根据所述多个拦截指示信息对新业务访问信息进行拦截处理,此时的所述共享内存中可以无需设置所述拦截规则序号记录库。

进一步的,请一并参见图2a,是本发明实施例提供的一种信息拦截处理系统的结构示意图。所述系统可以包括前端服务器100和拦截后台服务器200;所述前端服务器100包括业务逻辑服务进程100a、共享内存100b、拦截代理服务100c;所述共享内存100b包括上报队列1001b、拦截规则序号记录库1002b、本地拦截指示信息库1003b。在具体的应用场景中,当所述前端服务器100的所述业务逻辑服务进程100a获取到所述客户端上报的新业务访问信息时,所述业务逻辑服务进程100a可以为所述新业务访问信息分配对应的拦截规则序号,并将所分配的拦截规则序号添加至所述新业务访问信息中;所述业务逻辑服务进程100a再将包含所分配的拦截规则序号的新业务访问信息存储到所述共享内存100b中的所述上报队列1001b中,并且所述业务逻辑服务进程100a还将所分配的拦截规则序号存储到所述共享内存100b中的所述拦截规则序号记录库1002b中,同时,所述业务逻辑服务进程100a还从所述共享内存100b中的所述本地拦截指示信息库1003b中提取所述目标拦截指示信息,并当所述新业务访问信息所包含的拦截规则序号对应的拦截规则与所述目标拦截指示信息相关联时,所述业务逻辑服务进程100a对所述新业务访问信息进行拦截。其中,所述拦截代理服务100c的具体实现功能、所述拦截代理服务100c与所述共享内存100b之间的通信过程、以及所述拦截代理服务100c与所述拦截后台服务器200之间的通信过程可以参见上述图2对应实施例中的S201-S203,这里不再进行赘述。

本发明实施例通过检测预设的共享内存中的上报队列对应的队列属性参数,并当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器生成多个拦截指示信息,再通过所述拦截代理服务获取所述拦截后台服务器中的所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

请参见图3,是本发明实施例提供的另一种信息拦截处理方法的流程示意图,所述方法可以包括:

S301,检测预设的共享内存中的上报队列对应的队列属性参数;所述上报队列是用于存储客户端上报的业务访问信息,且所述业务访问信息包含本地分配的拦截规则序号;

S302,当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息;

其中,S301和S302步骤的具体实现方式可以参见上述图2对应实施例中的S201和S202,这里不再进行赘述。

S303,所述上报进程接收所述拦截后台服务器发送的数据回包,并存储所述数据回包中所携带的所述多个拦截指示信息;

S304,所述上报进程在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库;

具体的,请一并参见图3a,是本发明实施例提供的另一种信息拦截处理系统的结构示意图。如图3a所示,所述系统可以包括前端服务器300和拦截后台服务器400;所述前端服务器300包括业务逻辑服务进程300a、共享内存300b、拦截代理服务300c;所述共享内存300b包括上报队列3001b、拦截规则序号记录库3002b、本地拦截指示信息库3003b;所述拦截代理服务300c包括上报进程3001c;所述拦截后台服务器400包括访问频率统计服务进程400a。其中,所述上报进程3001c用于将会所述上报队列3001b中的所有业务访问信息统一上报到所述访问频率统计服务进程400a中。其中,所述访问频率统计服务进程400a用于接收多个前端服务器上报的多个业务访问信息,并用于对汇总得到的所有业务访问信息进行统计以生成相应的多个拦截指示信息。所述访问频率统计服务进程400a生成所述多个拦截指示信息后,可以将所述多个拦截指示信息添加在数据回包中。因此,所述上报进程3001c可以接收所述访问频率统计服务进程400a发送的数据回包,并且所述上报进程3001c可以存储所述数据回包中所携带的所述多个拦截指示信息。所述上报进程3001c进一步在所述拦截规则序号记录库3002b中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,所述上报进程3001c再在所存储的所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,所述上报进程3001c再将所述目标拦截指示信息存储到所述本地拦截指示信息库3003b中。其中,所述共享内存300b与所述业务逻辑服务进程300a之间的通信过程可以参见上述图2a对应实施例中的所述共享内存100b与所述业务逻辑服务进程100a之间的通信过程,这里不再进行赘述。

本发明实施例通过检测预设的共享内存中的上报队列对应的队列属性参数,并当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器生成多个拦截指示信息,再通过所述拦截代理服务获取所述拦截后台服务器中的所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

请参见图4,是本发明实施例提供的又一种信息拦截处理方法的流程示意图,所述方法可以包括:

S401,检测预设的共享内存中的上报队列对应的队列属性参数;所述上报队列是用于存储客户端上报的业务访问信息,且所述业务访问信息包含本地分配的拦截规则序号;

S402,当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息;

其中,S401和S402步骤的具体实现方式可以参见上述图2对应实施例中的S201和S202,这里不再进行赘述。

S403,信息维护进程按照预设拉取时间周期从所述拦截后台服务器中拉取所述多个拦截指示信息并存储所拉取到的所述多个拦截指示信息;

S404,所述信息维护进程在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库;

具体的,请一并参见图4a,是本发明实施例提供的又一种信息拦截处理系统的结构示意图。如图4a所示,所述系统可以包括前端服务器500和拦截后台服务器600;所述前端服务器500包括业务逻辑服务进程500a、共享内存500b、拦截代理服务500c;所述共享内存500b包括上报队列5001b、拦截规则序号记录库5002b、本地拦截指示信息库5003b;所述拦截代理服务500c包括上报进程5001c和信息维护进程5002c;所述拦截后台服务器600包括访问频率统计服务进程600a和信息拉取服务进程600b。其中,其中,所述上报进程5001c用于将会所述上报队列5001b中的所有业务访问信息统一上报到所述访问频率统计服务进程600a中。其中,所述访问频率统计服务进程600a用于接收多个前端服务器上报的多个业务访问信息,并用于对汇总得到的所有业务访问信息进行统计以生成相应的多个拦截指示信息。所述信息拉取服务进程600b用于存储所述访问频率统计服务进程600a所生成的所述多个拦截指示信息。所述信息维护进程5002c按照预设拉取时间周期从所述信息拉取服务进程600b中拉取所述多个拦截指示信息,并且所述信息维护进程5002c可以存储所拉取到的所述多个拦截指示信息。所述信息维护进程5002c进一步在所述拦截规则序号记录库5002b中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,所述信息维护进程5002c再在所存储的所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,所述信息维护进程5002c再将所述目标拦截指示信息存储到所述本地拦截指示信息库5003b中。通过设置所述信息维护进程5002c,可以使所述上报进程5001c仅负责上报功能,而由所述信息维护进程5002c实现获取、存储所述多个拦截指示信息以及选择所述目标拦截指示信息的功能,因此,不同功能之间可以并行处理,以提高前端服务器500的工作效率。其中,所述共享内存500b与所述业务逻辑服务进程500a之间的通信过程可以参见上述图2a对应实施例中的所述共享内存100b与所述业务逻辑服务进程100a之间的通信过程,这里不再进行赘述。

可选的,所述拦截后台服务器600中可以无需设置所述信息拉取服务进程600b,即在所述访问频率统计服务进程600a生成所述多个拦截指示信息后,直接向所述信息维护进程5002c推送所述多个拦截指示信息。因此,所述信息维护进程5002c可以接收所述访问频率统计服务进程600a所推送的所述多个拦截指示信息并存储所接收到的所述多个拦截指示信息。此后,所述信息维护进程5002c也同样可以在所述拦截规则序号记录库5002b中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所存储的所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库5003b中。

本发明实施例通过检测预设的共享内存中的上报队列对应的队列属性参数,并当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器生成多个拦截指示信息,再通过所述拦截代理服务获取所述拦截后台服务器中的所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

请参见图5,是本发明实施例提供的一种信息拦截处理装置的结构示意图。所述信息拦截处理装置1可以应用于如上述图1所示的任意一个前端服务器中,所述信息拦截处理装置1可以包括:检测模块10、拦截代理服务模块20、第一判断确定模块30、第二判断确定模块40、序号分配模块50、存储模块60、拦截处理模块70;所述拦截代理服务模块20包括上报进程单元201;

所述检测模块10,用于检测预设的共享内存中的上报队列对应的队列属性参数;所述上报队列是用于存储客户端上报的业务访问信息,且所述业务访问信息包含本地分配的拦截规则序号;

所述拦截代理服务模块20,用于当所述队列属性参数满足预设上报条件时,将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息;

所述拦截代理服务模块20,还用于获取所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。

其中,所述拦截代理服务模块20的功能相当于上述图2对应实施例中的所述拦截代理服务。所述检测模块10和所述拦截代理服务模块20的具体实现功能可以参见上述图2对应实施例中的S201-S203的步骤,这里不再进行赘述。

所述第一判断确定模块30,用于判断所述队列存储时间是否满足预设的上报时间周期,并在判断出所述队列存储时间满足所述上报时间周期时,确定所述队列属性参数满足预设上报条件;

所述第二判断确定模块40,用于判断所述已存储的业务访问信息数量是否达到预设的信息数量阈值,并在判断出所述已存储的业务访问信息数量达到所述信息数量阈值时,确定所述队列属性参数满足预设上报条件;

具体的,所述队列属性参数可以包括队列存储时间和已存储的业务访问信息数量,所述队列存储时间可以为所述上报队列触发上报操作后所累计的时间。因此,当第二判断确定模块40停止执行相应功能时,所述第一判断确定模块30可以判断所述队列存储时间是否满足预设的上报时间周期,若判断为满足所述上报时间周期,则确定所述队列属性参数满足预设上报条件,否则,确定所述队列属性参数不满足预设上报条件。当第一判断确定模块30停止执行相应功能时,可以由所述第二判断确定模块40判断所述已存储的业务访问信息数量是否达到预设的信息数量阈值,若判断为达到所述信息数量阈值,则确定所述队列属性参数满足预设上报条件,否则,确定所述队列属性参数不满足预设上报条件。

所述序号分配模块50,用于当获取到所述客户端上报的新业务访问信息时,为所述新业务访问信息分配对应的拦截规则序号,并将所分配的拦截规则序号添加至所述新业务访问信息中;

所述存储模块60,用于将包含所分配的拦截规则序号的新业务访问信息存储到所述上报队列中,并将所分配的拦截规则序号存储到所述拦截规则序号记录库中;

所述拦截处理模块70,用于从所述本地拦截指示信息库中提取所述目标拦截指示信息,并在所分配的拦截规则序号与所述目标拦截指示信息相关联时,对所述新业务访问信息进行拦截。

其中,所述序号分配模块50、所述存储模块60以及所述拦截处理模块70的具体实现功能可以参见上述图2a对应实施例中的所述业务逻辑服务进程100a与所述共享内存100b中的上报队列1001b、拦截规则序号记录库1002b以及本地拦截指示信息库1003b之间的通信过程,这里不再进行赘述。因此,可以理解为:所述业务逻辑服务进程100a具有所述序号分配模块50、所述存储模块60以及所述拦截处理模块70的功能。

其中,所述拦截代理服务模块20中的上报进程单元201可以具体用于提取所述上报队列中的所有业务访问信息,并将所提取的所有业务访问信息统一上报至拦截后台服务器;

所述上报进程单元201,还用于接收所述拦截后台服务器发送的数据回包,并存储所述数据回包中所携带的所述多个拦截指示信息;

所述上报进程单元201,还用于在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库;

其中,所述上报进程单元201的具体实现功能可以参见上述图3对应的S303-S304步骤,并可参见上述图3a中的所述上报进程3001c与拦截后台服务器400以及所述共享内存300b中的上报队列3001b、拦截规则序号记录库3002b、本地拦截指示信息库3003b之间的通信过程,这里不再进行赘述。因此,可以理解为:所述上报进程3001c具有所述上报进程单元201的功能。

本发明实施例通过检测预设的共享内存中的上报队列对应的队列属性参数,并当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器生成多个拦截指示信息,再通过所述拦截代理服务获取所述拦截后台服务器中的所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

再请参见图6,是本发明实施例提供的另一种信息拦截处理装置的结构示意图。所述信息拦截处理装置1可以应用于如上述图1所示的任意一个前端服务器中,所述信息拦截处理装置1可以包括上述图5对应实施例中的检测模块10、拦截代理服务模块20、第一判断确定模块30、第二判断确定模块40、序号分配模块50、存储模块60、拦截处理模块70以及所述拦截代理服务模块20中的上报进程单元201,进一步的,所述信息拦截处理装置1还可以包括:信息维护进程单元202;

所述信息维护进程单元202,用于按照预设拉取时间周期从所述拦截后台服务器中拉取所述多个拦截指示信息并存储所拉取到的所述多个拦截指示信息,或者,用于接收所述拦截后台服务器所推送的所述多个拦截指示信息并存储所接收到的所述多个拦截指示信息;

所述信息维护进程单元202,还用于在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库。

具体的,通过增加所述信息维护进程单元202,可以使所述上报进程单元201仅负责实现上报业务访问信息的功能,即所述上报进程单元201无需执行获取和存储所述多个拦截指示信息的功能,所述上报进程单元201也无需执行选择所述目标拦截指示信息的功能。而是由所述信息维护进程单元202按照预设拉取时间周期从所述拦截后台服务器中拉取所述多个拦截指示信息并存储所拉取到的所述多个拦截指示信息(此时的拦截后台服务器具备存储所述多个拦截指示信息的功能),或者由所述信息维护进程单元202接收所述拦截后台服务器所推送的所述多个拦截指示信息并存储所接收到的所述多个拦截指示信息(此时的拦截后台服务器不具备存储所述多个拦截指示信息的功能,即所述拦截后台服务器一生成所述多个拦截指示信息时就将所述多个拦截指示信息推送给所述信息维护进程单元202)。所述信息维护进程单元202可以进一步在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库。其中,所述信息维护进程单元202的具体实现功能可以参见上述图4对应的S403-S404步骤,并可参见上述图4a中的所述信息维护进程5002c与拦截后台服务器600以及所述共享内存500b中的上报队列5001b、拦截规则序号记录库5002b、本地拦截指示信息库5003b之间的通信过程,这里不再进行赘述。因此,可以理解为:所述信息维护进程5002c具有所述信息维护进程单元202的功能。

通过设置所述信息维护进程单元202,可以使所述上报进程单元201仅负责上报功能,而由所述信息维护进程单元202实现获取、存储所述多个拦截指示信息以及选择所述目标拦截指示信息的功能,因此,不同功能之间可以并行处理,以提高信息拦截处理装置1的工作效率。

本发明实施例通过检测预设的共享内存中的上报队列对应的队列属性参数,并当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器生成多个拦截指示信息,再通过所述拦截代理服务获取所述拦截后台服务器中的所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

请参见图7,是本发明实施例提供的又一种信息拦截处理装置的结构示意图。如图7所示,所述信息拦截处理装置可以应用于如上述图1所示的任意一个前端服务器中,所述信息拦截处理装置1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。

在图7所示的信息拦截处理装置1000中,网络接口1004主要用于连接拦截后台服务器,与所述拦截后台服务器进行数据通信;而用户接口1003主要用于为用户提供输入的接口,获取用户输出的数据;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,并具体执行以下步骤:

检测预设的共享内存中的上报队列对应的队列属性参数;所述上报队列是用于存储客户端上报的业务访问信息,且所述业务访问信息包含本地分配的拦截规则序号;

当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器根据汇总得到的业务访问信息以及各业务访问信息中的拦截规则序号所对应的拦截规则生成多个拦截指示信息;

控制所述拦截代理服务获取所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。

在一个实施例中,所述队列属性参数包括队列存储时间和已存储的业务访问信息数量;

所述处理器1001在执行当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器之前,还执行以下步骤:

判断所述队列存储时间是否满足预设的上报时间周期,并在判断出所述队列存储时间满足所述上报时间周期时,确定所述队列属性参数满足预设上报条件;或者,

判断所述已存储的业务访问信息数量是否达到预设的信息数量阈值,并在判断出所述已存储的业务访问信息数量达到所述信息数量阈值时,确定所述队列属性参数满足预设上报条件。

在一个实施例中,所述共享内存还包括拦截规则序号记录库和本地拦截指示信息库;所述拦截规则序号记录库是用于存储所获取到的业务访问信息对应的本地分配的拦截规则序号;所述本地拦截指示信息库用于存储所述目标拦截指示信息。

在一个实施例中,所述拦截代理服务包括上报进程;

则所述处理器1001在执行通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器时,具体执行以下步骤:

控制所述上报进程提取所述上报队列中的所有业务访问信息,并将所提取的所有业务访问信息统一上报至拦截后台服务器。

在一个实施例中,所述处理器1001在执行通过所述拦截代理服务获取所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息时,具体执行以下步骤:

控制所述上报进程接收所述拦截后台服务器发送的数据回包,并存储所述数据回包中所携带的所述多个拦截指示信息;

控制所述上报进程在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库。

在一个实施例中,所述拦截代理服务还包括信息维护进程;

则所述处理器1001在执行通过所述拦截代理服务获取所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息时,具体执行以下步骤:

控制所述信息维护进程按照预设拉取时间周期从所述拦截后台服务器中拉取所述多个拦截指示信息并存储所拉取到的所述多个拦截指示信息,或者,所述信息维护进程接收所述拦截后台服务器所推送的所述多个拦截指示信息并存储所接收到的所述多个拦截指示信息;

控制所述信息维护进程在所述拦截规则序号记录库中查找在预设时间段内所存储的拦截规则序号,并确定为目标拦截规则序号,并在所述多个拦截指示信息中选择与所述目标拦截规则序号对应的目标拦截指示信息,并将所述目标拦截指示信息存储到所述本地拦截指示信息库。

在一个实施例中,所述处理器1001还执行以下步骤:

当获取到所述客户端上报的新业务访问信息时,为所述新业务访问信息分配对应的拦截规则序号,并将所分配的拦截规则序号添加至所述新业务访问信息中;

将包含所分配的拦截规则序号的新业务访问信息存储到所述上报队列中,并将所分配的拦截规则序号存储到所述拦截规则序号记录库中;

从所述本地拦截指示信息库中提取所述目标拦截指示信息,并在所分配的拦截规则序号与所述目标拦截指示信息相关联时,对所述新业务访问信息进行拦截。

本发明实施例通过检测预设的共享内存中的上报队列对应的队列属性参数,并当所述队列属性参数满足预设上报条件时,通过预设的拦截代理服务将所述上报队列中的所有业务访问信息统一上报至拦截后台服务器,以使所述拦截后台服务器生成多个拦截指示信息,再通过所述拦截代理服务获取所述拦截后台服务器中的所述多个拦截指示信息,并根据所述本地分配的拦截规则序号在所述多个拦截指示信息中选择出目标拦截指示信息,以便于后续根据所述目标拦截指示信息对获取到的新业务访问信息进行拦截处理。由此可见,在获取到多个业务访问信息后,才进行一次RPC上报,所以可以有效降低RPC上报次数,进而可以降低拦截后台服务器的负载压力;而且后续的新业务访问信息可以直接基于目标拦截指示信息实现拦截处理,即无需同步等待拦截后台服务器返回拦截指示信息,从而可以提高对业务访问的拦截处理效率;而且通过选择出目标拦截指示信息,还可以减少在对新业务访问信息进行拦截处理时所依赖的拦截指示信息的数量,从而可以进一步提高对业务访问的拦截处理效率。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

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