GSLB调度系统的数据处理方法及装置与流程

文档序号:11156751阅读:512来源:国知局
GSLB调度系统的数据处理方法及装置与制造工艺

本发明涉及通信领域,具体而言,涉及一种GSLB调度系统的数据处理方法及装置。



背景技术:

目前,全球负载均衡(GSLB,Global Server Load Balance)调度系统在接收到用户发往源站的访问请求后,通常会按照预定规则对接收到的每一个访问请求分别进行校验,对校验成功的每一个访问请求分别进行缓存加速操作。其中,通过分光劫持或者端口镜像的方式,可以让用户发送的访问请求被GSLB调度系统的网口接收到,以便于GSLB对访问请求进行校验处理。然而,当大量的访问请求发往源站时,由于GSLB调度系统的网口的收包量巨大,数据处理过程烦琐,且用于校验的规则众多。因而,若仍采用现有技术中常规的遍历校验方法显然数据处理效率较低,且无法保证数据处理的成功率。



技术实现要素:

本发明提供了一种GSLB调度系统的数据处理方法及装置,以至少解决相关技术中采用现有的遍历校验处理方法所导致的处理效率较低的问题。

根据本发明的一个方面,提供了一种GSLB调度系统的数据处理方法,包括:获取当前用户访问请求;根据预先建立的资源缓存池对获取到的上述当前用户访问请求进行识别;在识别出上述当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对上述当前用户访问请求执行缓存加速操作。

可选地,上述根据预先建立的资源缓存池对获取到的上述当前用户访问请求进行识别包括:在预先建立的IP地址缓存池中查找上述当前用户访问请求中携带的当前IP地址;若查找到上述当前IP地址,则获取上述当前用户访问请求的请求类型;根据上述当前用户访问请求的请求类型所对应的上述资源缓存池对上述当前用户访问请求进行上述识别。

可选地,在预先建立的IP地址缓存池中查找上述当前用户访问请求中携带的当前IP地址之后,还包括:若未查找到上述当前IP地址,则判断上述当前IP地址是否满足预先配置的IP规则;若上述当前IP地址满足上述IP规则,则将上述当前IP地址存储到上述IP地址缓存池中。

可选地,上述根据上述当前用户访问请求的请求类型所对应的上述资源缓存池对上述当前用户访问请求进行上述识别包括:在获取到的上述当前用户访问请求的上述请求类型为DNS域名请求时,则获取上述当前用户访问请求中的DNS域名所属的DNS域名缓 存池,其中,上述DNS域名缓存池包括以下至少之一:白名单缓存池、黑名单缓存池及非黑非白缓存池;根据上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池对上述当前用户访问请求进行上述识别。

可选地,上述在识别出上述当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对上述当前用户访问请求执行缓存加速操作包括:在上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池为上述白名单缓存池时,对上述当前用户访问请求执行缓存加速操作。

可选地,上述根据上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池对上述当前用户访问请求进行上述识别包括:在上述白名单缓存池中查找上述当前用户访问请求中的DNS域名;若在上述白名单缓存池中查找到上述当前用户访问请求中的DNS域名,则确定上述当前用户访问请求为上述免校验的待处理操作请求;若在上述白名单缓存池中未查找到上述当前用户访问请求中的DNS域名,则在上述非黑非白缓存池中查找上述当前用户访问请求中的DNS域名;若在上述非黑非白缓存池中查找到上述当前用户访问请求中的DNS域名,则拒绝响应上述当前用户访问请求;若在上述非黑非白缓存池中未查找到上述当前用户访问请求中的DNS域名,则判断上述当前用户访问请求中的DNS域名是否满足预先配置的白名单规则;若满足预先配置的上述白名单规则,则将上述当前用户访问请求中的DNS域名存储到上述白名单缓存池;若不满足预先配置的上述白名单规则,则将上述当前用户访问请求中的DNS域名存储到上述非黑非白缓存池。

可选地,上述根据上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池对上述当前用户访问请求进行上述识别包括:在上述黑名单缓存池中查找上述当前用户访问请求中的DNS域名;若在上述黑名单缓存池中查找到上述当前用户访问请求中的DNS域名,则拒绝响应上述当前用户访问请求;若在上述黑名单缓存池中未查找到上述当前用户访问请求中的DNS域名,则判断上述当前用户访问请求中的DNS域名是否满足预先配置的黑名单规则;若满足预先配置的上述黑名单规则,则将上述当前用户访问请求中的DNS域名存储到上述黑名单缓存池;若不满足预先配置的上述黑名单规则,则将上述当前用户访问请求中的DNS域名存储到上述非黑非白缓存池。

可选地,上述根据上述当前用户访问请求的请求类型所对应的上述资源缓存池对上述当前用户访问请求进行上述识别包括:在获取到的上述当前用户访问请求的上述请求类型为http请求时,则对上述http请求中的URL进行分段,以得到上述当前用户访问请求的上述URL的URL域名及URL后缀;根据上述当前用户访问请求的上述URL域名及上述URL后缀对上述当前用户访问请求进行上述识别。

可选地,上述在识别出上述当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对上述当前用户访问请求执行缓存加速操作包括:在上述当前用户访问请求的上述URL后缀属于预先配置的后缀资源池,且上述当前用户访问请求的上述域名满足预定域名规则时,对上述当前用户访问请求执行缓存加速操作。

可选地,上述根据上述当前用户访问请求的请求类型所对应的上述资源缓存池对上述当前用户访问请求进行上述识别包括:判断上述当前用户访问请求的上述URL后缀是否属于预先配置的上述后缀资源池;若上述当前用户访问请求的上述URL后缀不属于预先配置的上述后缀资源池,则拒绝响应上述当前用户访问请求;若上述当前用户访问请求的上述URL后缀属于预先配置的上述后缀资源池,则判断上述当前用户访问请求的上述域名是否满足上述预定域名规则;若满足上述预定域名规则,则确定上述当前用户访问请求为上述免校验的待处理操作请求;若不满足上述预定域名规则,拒绝响应上述当前用户访问请求。

根据本发明的另一方面,提供了一种GSLB调度系统的数据处理装置,包括:获取单元,用于获取当前用户访问请求;识别单元,用于根据预先建立的资源缓存池对获取到的上述当前用户访问请求进行识别;处理单元,用于在识别出上述当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对上述当前用户访问请求执行缓存加速操作。

可选地,上述识别单元包括:查找模块,用于在预先建立的IP地址缓存池中查找上述当前用户访问请求中携带的当前IP地址;获取模块,用于在查找到上述当前IP地址,获取上述当前用户访问请求的请求类型;识别模块,用于根据上述当前用户访问请求的请求类型所对应的上述资源缓存池对上述当前用户访问请求进行上述识别。

可选地,还包括:判断模块,用于在预先建立的IP地址缓存池中查找上述当前用户访问请求中携带的当前IP地址之后,在未查找到上述当前IP地址时,判断上述当前IP地址是否满足预先配置的IP规则;存储模块,用于在上述当前IP地址满足上述IP规则时,将上述当前IP地址存储到上述IP地址缓存池中。

可选地,上述识别模块包括:获取子模块,用于在获取到的上述当前用户访问请求的上述请求类型为DNS域名请求时,则获取上述当前用户访问请求中的DNS域名所属的DNS域名缓存池,其中,上述DNS域名缓存池包括以下至少之一:白名单缓存池、黑名单缓存池及非黑非白缓存池;第一识别子模块,用于根据上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池对上述当前用户访问请求进行上述识别。

可选地,上述处理单元包括:第一处理模块,用于在上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池为上述白名单缓存池时,对上述当前用户访问请求执行缓存加速操作。

可选地,上述第一识别子模块通过以下步骤实现根据上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池对上述当前用户访问请求进行上述识别包括:在上述白名单缓存池中查找上述当前用户访问请求中的DNS域名;若在上述白名单缓存池中查找到上述当前用户访问请求中的DNS域名,则确定上述当前用户访问请求为上述免校验的待处理操作请求;若在上述白名单缓存池中未查找到上述当前用户访问请求中的 DNS域名,则在上述非黑非白缓存池中查找上述当前用户访问请求中的DNS域名;若在上述非黑非白缓存池中查找到上述当前用户访问请求中的DNS域名,则拒绝响应上述当前用户访问请求;若在上述非黑非白缓存池中未查找到上述当前用户访问请求中的DNS域名,则判断上述当前用户访问请求中的DNS域名是否满足预先配置的白名单规则;若满足预先配置的上述白名单规则,则将上述当前用户访问请求中的DNS域名存储到上述白名单缓存池;若不满足预先配置的上述白名单规则,则将上述当前用户访问请求中的DNS域名存储到上述非黑非白缓存池。

可选地,上述第一识别子模块通过以下步骤实现根据上述当前用户访问请求中的DNS域名所属的上述DNS域名缓存池对上述当前用户访问请求进行上述识别包括:在上述黑名单缓存池中查找上述当前用户访问请求中的DNS域名;若在上述黑名单缓存池中查找到上述当前用户访问请求中的DNS域名,则拒绝响应上述当前用户访问请求;若在上述黑名单缓存池中未查找到上述当前用户访问请求中的DNS域名,则判断上述当前用户访问请求中的DNS域名是否满足预先配置的黑名单规则;若满足预先配置的上述黑名单规则,则将上述当前用户访问请求中的DNS域名存储到上述黑名单缓存池;若不满足预先配置的上述黑名单规则,则将上述当前用户访问请求中的DNS域名存储到上述非黑非白缓存池。

可选地,上述识别模块包括:分段子模块,用于在获取到的上述当前用户访问请求的上述请求类型为http请求时,则对上述http请求中的URL进行分段,以得到上述当前用户访问请求的上述URL的URL域名及URL后缀;第二识别子模块,用于根据上述当前用户访问请求的上述URL域名及上述URL后缀对上述当前用户访问请求进行上述识别。

可选地,上述处理单元包括:第二处理模块,用于在上述当前用户访问请求的上述URL后缀属于预先配置的后缀资源池,且上述当前用户访问请求的上述域名满足预定域名规则时,对上述当前用户访问请求执行缓存加速操作。

可选地,上述第二识别子模块通过以下步骤实现根据上述当前用户访问请求的请求类型所对应的上述资源缓存池对上述当前用户访问请求进行上述识别包括:判断上述当前用户访问请求的上述URL后缀是否属于预先配置的上述后缀资源池;若上述当前用户访问请求的上述URL后缀不属于预先配置的上述后缀资源池,则拒绝响应上述当前用户访问请求;若上述当前用户访问请求的上述URL后缀属于预先配置的上述后缀资源池,则判断上述当前用户访问请求的上述域名是否满足上述预定域名规则;若满足上述预定域名规则,则确定上述当前用户访问请求为上述免校验的待处理操作请求;若不满足上述预定域名规则,拒绝响应上述当前用户访问请求。

通过本发明,通过利用预先建立的资源缓存池识别出当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求,进而对识别出为GSLB调度系统中免校验的待处理操作请求的当前用户访问请求执行缓存加速操作,以使GSLB调度系统能快速获取匹配结果,通过直接在预先建立的资源缓存池中进行查找的方法,以避免对每一次获取到 的用户访问请求分别进行校验,从而实现提高GSLB调度系统的数据处理效率的效果,进而克服现有技术中所采用的遍历校验处理方法所导致的处理效率较低的问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的GSLB调度系统的数据处理方法的流程图;

图2是根据本发明实施例的一种可选的GSLB调度系统的数据处理方法的示意图;

图3是根据本发明实施例的另一种可选的GSLB调度系统的数据处理方法的示意图;

图4是根据本发明实施例的又一种可选的GSLB调度系统的数据处理方法的示意图;

图5是根据本发明实施例的一种可选的GSLB调度系统的数据处理装置的示意图;

图6是根据本发明实施例的另一种可选的GSLB调度系统的数据处理装置的示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

实施例1

在本实施例中提供了一种GSLB调度系统的数据处理方法,图1是根据本发明实施例的的流程图,如图1所示,该流程包括如下步骤:

步骤S102,获取当前用户访问请求;

步骤S104,根据预先建立的资源缓存池对获取到的所述当前用户访问请求进行识别;

步骤S106,在识别出所述当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对所述当前用户访问请求执行缓存加速操作。

可选地,在本实施例中,上述GSLB调度系统的数据处理方法可以但不限于应用于内容分发网络(CDN,Content Delivery Network)的请求路由(RR,Request Routing)调度系统的校验过程中,通过利用预先建立的资源缓存池识别当前用户访问请求在之前是否已经被校验过,若根据预先建立的资源缓存池识别出当前用户访问请求为GSLB调度系统中免校验的待处理操作请求,则直接对获取到的当前用户访问请求执行缓存加速 操作,以使GSLB调度系统能快速获取匹配结果,从而实现提高GSLB调度系统的数据处理效率,进而克服现有技术中所采用的遍历校验处理方法所导致的处理效率较低的问题。

需要说明的是,在本实施例中,通过在服务器中预先建立上述资源缓存池,从而实现直接在资源缓存池中查找当前用户请求的相关信息,以减少对每次获取到的当前用户请求分别进行验证匹配。由于查找所需时间远远小于验证匹配的时间,因而,通过利用上述预先建立的资源池使GSLB调度系统可以快速获取处理结果,从而达到提高数据处理效率的效果。

可选地,在本实施例中,上述资源缓存池可以包括但不限于:IP地址缓存池、请求类型所对应的资源缓存池,其中,上述请求类型可以包括但不限于以下至少之一:DNS域名请求、http请求。

可选地,在本实施例中,上述根据预先建立的资源缓存池对获取到的当前用户访问请求进行识别包括:S1,在预先建立的IP地址缓存池中查找当前用户访问请求中携带的当前IP地址;S2,若查找到当前IP地址,则获取当前用户访问请求的请求类型;S3,根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别。也就是说,通过用户访问请求的IP地址直接对获取到的当前用户访问请求进行验证,若在IP地址缓存池中查找到上述当前用户访问请求的IP地址,则表示该IP地址直接已经验证过,这里可以直接进行免校验加速缓存操作;若未查找到上述IP地址,则根据IP规则对IP地址进行规则校验,在满足IP规则时,将该IP地址存储到上述IP地址缓存池中,从而使得后续用户访问请求无需再对相同的IP地址进行校验,进而达到节约校验时间,提高数据处理效率的目的。

可选地,在本实施例中,在对当前用户访问请求进行识别后,若识别出该当前用户访问请求为GSLB调度系统中免校验的待处理操作请求,则对该当前用户访问请求执行缓存加速操作;若识别出该当前用户访问请求不是GSLB调度系统中免校验的待处理操作请求,则拒绝响应该当前用户访问请求。从而实现对IP地址不符合要求的用户访问请求进行过滤,以使服务器拒绝IP地址不符合要求的用户访问请求进行缓存加速操作。

可选地,在本实施例中,在当前用户访问请求的请求类型为DNS域名请求时,则利用预先建立的DNS域名资源池判断当前用户访问请求中的DNS域名所属的DNS域名缓存池,进而根据对应的DNS域名资源池对当前用户访问请求进行进一步的准确识别。此外,在当前用户访问请求的请求类型为http请求时,则对http请求中的URL进行分段,进而根据分段后的URL的URL域名及URL后缀对当前用户访问请求进行进一步的准确识别。

通过本申请提供的实施例,通过利用预先建立的资源缓存池识别出当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求,进而对识别出为GSLB调度系统中免校验的待处理操作请求的当前用户访问请求执行缓存加速操作,以使GSLB调度系统能快速获取匹配结果,通过直接在预先建立的资源缓存池中进行查找的方法,以避免对 每一次获取到的用户访问请求分别进行校验,从而实现提高GSLB调度系统的数据处理效率的效果,进而克服现有技术中所采用的遍历校验处理方法所导致的处理效率较低的问题。

作为一种可选的方案,根据预先建立的资源缓存池对获取到的当前用户访问请求进行识别包括:

S1,在预先建立的IP地址缓存池中查找当前用户访问请求中携带的当前IP地址;

S2,若查找到当前IP地址,则获取当前用户访问请求的请求类型;

S3,根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别。

可选地,在本实施例中,在预先建立的IP地址缓存池中查找当前用户访问请求中携带的当前IP地址之后,还包括:

S4,若未查找到当前IP地址,则判断当前IP地址是否满足预先配置的IP规则;

S5,若当前IP地址满足IP规则,则将当前IP地址存储到IP地址缓存池中。

可选地,在本实施例中,上述IP地址缓存池中可以但不限于存储有已经在之前的数据处理过程中验证过的IP地址。其中,上述IP地址资源缓存池可以但不限于定期清除缓存,并获取更新后的新IP地址。

具体结合图2所示的内容进行说明,具体步骤可以如下:

S1,GSLB调度系统初始化时,新建一个IP地址缓存池,IP地址缓存池初始为空;

S2,获取当前用户访问请求后,在IP地址缓存池中查找当前用户访问请求的IP地址,若查找到,则执行步骤S4;若未查找到,则执行步骤S3;

S3,根据数据库中预先配置的IP规则判断该当前用户访问请求的IP地址是否符合要求,若判断出符合要求,则将该IP地址存储到该IP地址缓存池中;若判断出不符合要求,则拒绝响应该当前用户访问请求;

S4,获取当前用户访问请求的请求类型,并根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别;

通过本申请提供的实施例,通过利用预先建立的IP地址缓存池,实现对已经校验过的IP地址进行存储,从而使后续获取到的用户访问请求在IP地址相同时,无需再次进行IP规则校验,从而达到节省校验时间,提高数据处理效率的效果。

作为一种可选的方案,根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别包括:

S1,在获取到的当前用户访问请求的请求类型为DNS域名请求时,则获取当前用户访问请求中的DNS域名所属的DNS域名缓存池,其中,DNS域名缓存池包括以下至少之一:白名单缓存池、黑名单缓存池及非黑非白缓存池;

S2,根据当前用户访问请求中的DNS域名所属的DNS域名缓存池对当前用户访问请求进行识别。

可选地,在本实施例中,上述白名单缓存池用于缓存执行缓存加速操作的DNS域名,上述黑名单缓存池用于缓存禁止执行缓存加速操作的DNS域名,而非黑非白缓存池用于缓存还未确定是否执行缓存加速操作的DNS域名。

需要说明的是,在本实施例中,在获取到当前用户访问请求的DNS域名后,则可以根据该DNS域名所属的DNS域名缓存池来识别该当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求,从而实现对获取到的当前用户访问请求进行筛选处理,以达到无需每次都对域名进行遍历校验,从而减少大量的域名校验时间。

作为一种可选的方案,在识别出当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对当前用户访问请求执行缓存加速操作包括:

S1,在当前用户访问请求中的DNS域名所属的DNS域名缓存池为白名单缓存池时,对当前用户访问请求执行缓存加速操作。

可选地,在本实施例中,在根据当前用户访问请求中的DNS域名所属的DNS域名缓存池识别出当前用户访问请求中的DNS域名所属的DNS域名缓存池为白名单缓存池的步骤包括:

S12,在白名单缓存池中查找当前用户访问请求中的DNS域名;

S14,若在白名单缓存池中查找到当前用户访问请求中的DNS域名,则确定当前用户访问请求为免校验的待处理操作请求;

S16,若在白名单缓存池中未查找到当前用户访问请求中的DNS域名,则在非黑非白缓存池中查找当前用户访问请求中的DNS域名;

S18,若在非黑非白缓存池中查找到当前用户访问请求中的DNS域名,则拒绝响应当前用户访问请求;

S20,若在非黑非白缓存池中未查找到当前用户访问请求中的DNS域名,则判断当前用户访问请求中的DNS域名是否满足预先配置的白名单规则;

S22,若满足预先配置的白名单规则,则将当前用户访问请求中的DNS域名存储到白名单缓存池;若不满足预先配置的白名单规则,则将当前用户访问请求中的DNS域名存储到非黑非白缓存池。

需要说明的是,在本实施例中,通过在预先建立的白名单缓存池中查找当前用户访问请求中的DNS域名所属的DNS域名缓存池,以识别该当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求。若在白名单缓存池中查找到当前用户访问请求中的DNS域名,也就表示该当前用户访问请求已经被验证过,则可以直接对其进行缓存加速操作。

进一步,若在白名单缓存池中未查找到当前用户访问请求中的DNS域名,且在非黑非白缓存池中未查找到当前用户访问请求中的DNS域名,则可以利用白名单规则对该当前访问请求进行匹配验证,若该当前访问请求的DNS域名满足预先配置的白名单规则,则将其存储到白名单缓存池中,以便于后续用户访问请求直接查找,从而实现减少校验时间,提高数据处理效率的目的。例如,如图3所示过程,若对当前用户访问请求精确匹配到白名单缓存池,则将其添加到白名单缓存池中。

作为一种可选的方案,根据当前用户访问请求中的DNS域名所属的DNS域名缓存池对当前用户访问请求进行识别包括:

S1,在黑名单缓存池中查找当前用户访问请求中的DNS域名;

S2,若在黑名单缓存池中查找到当前用户访问请求中的DNS域名,则拒绝响应当前用户访问请求;

S3,若在黑名单缓存池中未查找到当前用户访问请求中的DNS域名,则判断当前用户访问请求中的DNS域名是否满足预先配置的黑名单规则;

S4,若满足预先配置的黑名单规则,则将当前用户访问请求中的DNS域名存储到黑名单缓存池;若不满足预先配置的黑名单规则,则将当前用户访问请求中的DNS域名存储到非黑非白缓存池。

需要说明的是,在本实施例中,通过在预先建立的白名单缓存池中查找当前用户访问请求中的DNS域名所属的DNS域名缓存池,以识别该当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求。若在黑名单缓存池中查找到当前用户访问请求中的DNS域名,也就表示该当前用户访问请求已经被禁止执行快速缓存操作,则拒绝该当前访问请求。其中,上述黑名单缓存池的初始状态不为空。也就是说,在本实施例中,可以预先存储黑名单,也可以根据黑名单规则,对获取到的用户访问请求进行匹配,在匹配成功后再添加到黑名单缓存池中。例如,如图3所示过程,若对当前用户访问请求正则匹配到黑名单缓存池,则将其添加到黑名单缓存池中。

进一步,在本实施例中,若在黑名单缓存池中未查找到当前用户访问请求中的DNS域名,则可以利用黑名单规则对该当前访问请求进行匹配验证,若该当前访问请求的DNS域名满足预先配置的黑名单规则,则将其存储到黑名单缓存池中,以便于后续用户访问请求直接查找,从而实现减少校验时间,提高数据处理效率的目的。

通过本申请提供的实施例,通过预先建立DNS域名缓存池,以实现准确识别出当前用户访问请求属于白名单缓存池,黑名单缓存池,还是非黑非白缓存池,从而使得服务器可以根据当前用户访问请求中的DNS域名所属的DNS域名缓存池,实现对当前用户访问请求的准确识别。也就是说,对DNS域名属于白名单缓存池的当前用户访问请求进行缓存加速操作,对DNS域名属于黑名单缓存池或非黑非白缓存池的当前用户访问请求拒绝响应。此外,随着资源缓存池的内容逐渐增多,需要进行域名验证的用户访问请求也就越少,这样不仅可以节约大量的域名校验时间,而且在配置了众多通配和正则规则的情况,更能体现出缓存池的优势,而无需每次都对域名进行规则的遍历校验。

作为一种可选的方案,根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别包括:

S1,在获取到的当前用户访问请求的请求类型为http请求时,则对http请求中的URL进行分段,以得到当前用户访问请求的URL的URL域名及URL后缀;

S2,根据当前用户访问请求的URL域名及URL后缀对当前用户访问请求进行识别。

具体结合以下示例进行说明,如图4所示,假设当前用户访问请求为http请求,该请求为:http://download.baidu.com/app/2015/QQ_V2.3.apk?uid=2323,对其进行URL校验。首先对该URL进行分段,以得到当前用户访问请求的URL的URL域名及URL后缀,其中,该当前用户访问请求的URL域名为“download.baidu.com”,URL后缀“.apk”。进一步,分别对当前用户访问请求的URL域名及URL后缀进行识别。

需要说明的是,在本实施例中,通过对URL进行分段匹配,从而实现有效减少正则匹配的次数。其中,对URL后缀的识别,就可以阻拦90%左右的HTTP请求,从而大大缓解GSLB调度系统的负载压力,达到提高数据处理速率的效果。

作为一种可选的方案,在识别出当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对当前用户访问请求执行缓存加速操作包括:

S1,在当前用户访问请求的URL后缀属于预先配置的后缀资源池,且当前用户访问请求的域名满足预定域名规则时,对当前用户访问请求执行缓存加速操作。

可选地,在本实施例中,根据当前用户访问请求的请求类型所对应的资源缓存池识别出当前用户访问请的URL后缀属于预先配置的后缀资源池,且当前用户访问请求的域名满足预定域名规则的步骤包括:

S12,判断当前用户访问请求的URL后缀是否属于预先配置的后缀资源池;

S14,若当前用户访问请求的URL后缀不属于预先配置的后缀资源池,则拒绝响应当前用户访问请求;

S16,若当前用户访问请求的URL后缀属于预先配置的后缀资源池,则判断当前用 户访问请求的域名是否满足预定域名规则;

S18,若满足预定域名规则,则确定当前用户访问请求为免校验的待处理操作请求;

S20,若不满足预定域名规则,拒绝响应当前用户访问请求。

具体结合以下示例进行说明,如图4所示,具体步骤可以如下:

S1,获取当前访问请求URL的URL后缀,判断URL后缀是否属于预先配置的后缀资源池,若不属于,则执行步骤S4;若属于,则执行步骤S3;

S2,遍历配置的预定域名规则对URL域名进行规则匹配,如果不符合规则,则执行步骤S3;如果符合规则,则执行步骤S4;

S3,拒绝响应当前用户访问请求;

S4,对当前用户访问请求执行缓存加速操作。

通过本申请提供的实施例,通过对URL分段匹配,从而实现有效减少正则匹配的次数,以达到缓解GSLB调度系统的负载压力,提高数据处理速率的效果。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

在本实施例中还提供了一种GSLB调度系统的数据处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

在本实施例中提供了一种GSLB调度系统的数据处理装置,图5是根据本发明实施例的的示意图,如图5所示,包括:

1)获取单元502,用于获取当前用户访问请求;

2)识别单元504,用于根据预先建立的资源缓存池对获取到的当前用户访问请求进行识别;

3)处理单元506,用于在识别出当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对当前用户访问请求执行缓存加速操作。

可选地,在本实施例中,上述GSLB调度系统的数据处理装置可以但不限于应用于内容分发网络(CDN,Content Delivery Network)的请求路由(RR,Request Routing)调度系统的校验过程中,通过利用预先建立的资源缓存池识别当前用户访问请求在之前是否已经被校验过,若根据预先建立的资源缓存池识别出当前用户访问请求为GSLB调度系统中免校验的待处理操作请求,则直接对获取到的当前用户访问请求执行缓存加速操作,以使GSLB调度系统能快速获取匹配结果,从而实现提高GSLB调度系统的数据处理效率,进而克服现有技术中所采用的遍历校验处理装置所导致的处理效率较低的问题。

需要说明的是,在本实施例中,通过在服务器中预先建立上述资源缓存池,从而实现直接在资源缓存池中查找当前用户请求的相关信息,以减少对每次获取到的当前用户请求分别进行验证匹配。由于查找所需时间远远小于验证匹配的时间,因而,通过利用上述预先建立的资源池使GSLB调度系统可以快速获取处理结果,从而达到提高数据处理效率的效果。

可选地,在本实施例中,上述资源缓存池可以包括但不限于:IP地址缓存池、请求类型所对应的资源缓存池,其中,上述请求类型可以包括但不限于以下至少之一:DNS域名请求、http请求。

可选地,在本实施例中,上述根据预先建立的资源缓存池对获取到的当前用户访问请求进行识别包括:S1,在预先建立的IP地址缓存池中查找当前用户访问请求中携带的当前IP地址;S2,若查找到当前IP地址,则获取当前用户访问请求的请求类型;S3,根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别。也就是说,通过用户访问请求的IP地址直接对获取到的当前用户访问请求进行验证,若在IP地址缓存池中查找到上述当前用户访问请求的IP地址,则表示该IP地址直接已经验证过,这里可以直接进行免校验加速缓存操作;若未查找到上述IP地址,则根据IP规则对IP地址进行规则校验,在满足IP规则时,将该IP地址存储到上述IP地址缓存池中,从而使得后续用户访问请求无需再对相同的IP地址进行校验,进而达到节约校验时间,提高数据处理效率的目的。

可选地,在本实施例中,在对当前用户访问请求进行识别后,若识别出该当前用户访问请求为GSLB调度系统中免校验的待处理操作请求,则对该当前用户访问请求执行缓存加速操作;若识别出该当前用户访问请求不是GSLB调度系统中免校验的待处理操作请求,则拒绝响应该当前用户访问请求。从而实现对IP地址不符合要求的用户访问请求进行过滤,以使服务器拒绝IP地址不符合要求的用户访问请求进行缓存加速操作。

可选地,在本实施例中,在当前用户访问请求的请求类型为DNS域名请求时,则利用预先建立的DNS域名资源池判断当前用户访问请求中的DNS域名所属的DNS域名缓存池,进而根据对应的DNS域名资源池对当前用户访问请求进行进一步的准确识别。此外,在当前用户访问请求的请求类型为http请求时,则对http请求中的URL进行分段,进而根据分段后的URL的URL域名及URL后缀对当前用户访问请求进行进一步的准确识别。

通过本申请提供的实施例,通过利用预先建立的资源缓存池识别出当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求,进而对识别出为GSLB调度系统中免校验的待处理操作请求的当前用户访问请求执行缓存加速操作,以使GSLB调度系统能快速获取匹配结果,通过直接在预先建立的资源缓存池中进行查找的装置,以避免对每一次获取到的用户访问请求分别进行校验,从而实现提高GSLB调度系统的数据处理效率的效果,进而克服现有技术中所采用的遍历校验处理装置所导致的处理效率较低的问题。

作为一种可选的方案,如图6所示,识别单元504包括:

1)查找模块602,用于在预先建立的IP地址缓存池中查找当前用户访问请求中携带的当前IP地址;

2)获取模块604,用于在查找到当前IP地址,获取当前用户访问请求的请求类型;

3)识别模块606,用于根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别。

可选地,在本实施例中,还包括:

4)判断模块608,用于在预先建立的IP地址缓存池中查找当前用户访问请求中携带的当前IP地址之后,在未查找到当前IP地址时,判断当前IP地址是否满足预先配置的IP规则;

5)存储模块610,用于在当前IP地址满足IP规则时,将当前IP地址存储到IP地址缓存池中。

可选地,在本实施例中,上述IP地址缓存池中可以但不限于存储有已经在之前的数据处理过程中验证过的IP地址。其中,上述IP地址资源缓存池可以但不限于定期清除缓存,并获取更新后的新IP地址。

具体结合图2所示的内容进行说明,具体步骤可以如下:

S1,GSLB调度系统初始化时,新建一个IP地址缓存池,IP地址缓存池初始为空;

S2,获取当前用户访问请求后,在IP地址缓存池中查找当前用户访问请求的IP地址,若查找到,则执行步骤S4;若未查找到,则执行步骤S3;

S3,根据数据库中预先配置的IP规则判断该当前用户访问请求的IP地址是否符合要求,若判断出符合要求,则将该IP地址存储到该IP地址缓存池中;若判断出不符合要求,则拒绝响应该当前用户访问请求;

S4,获取当前用户访问请求的请求类型,并根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别;

通过本申请提供的实施例,通过利用预先建立的IP地址缓存池,实现对已经校验过的IP地址进行存储,从而使后续获取到的用户访问请求在IP地址相同时,无需再次进行IP规则校验,从而达到节省校验时间,提高数据处理效率的效果。

作为一种可选的方案,识别模块606包括:

1)获取子模块,用于在获取到的当前用户访问请求的请求类型为DNS域名请求时,则获取当前用户访问请求中的DNS域名所属的DNS域名缓存池,其中,DNS域名缓存池包括以下至少之一:白名单缓存池、黑名单缓存池及非黑非白缓存池;

2)第一识别子模块,用于根据当前用户访问请求中的DNS域名所属的DNS域名缓存池对当前用户访问请求进行识别。

可选地,在本实施例中,上述白名单缓存池用于缓存执行缓存加速操作的DNS域名,上述黑名单缓存池用于缓存禁止执行缓存加速操作的DNS域名,而非黑非白缓存池用于缓存还未确定是否执行缓存加速操作的DNS域名。

需要说明的是,在本实施例中,在获取到当前用户访问请求的DNS域名后,则可以根据该DNS域名所属的DNS域名缓存池来识别该当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求,从而实现对获取到的当前用户访问请求进行筛选处理,以达到无需每次都对域名进行遍历校验,从而减少大量的域名校验时间。

作为一种可选的方案,处理单元506包括:

1)第一处理模块,用于在当前用户访问请求中的DNS域名所属的DNS域名缓存池为白名单缓存池时,对当前用户访问请求执行缓存加速操作。

可选地,在本实施例中,第一识别子模块通过以下步骤实现根据当前用户访问请求中的DNS域名所属的DNS域名缓存池对当前用户访问请求进行识别包括:

S1,在白名单缓存池中查找当前用户访问请求中的DNS域名;

S2,若在白名单缓存池中查找到当前用户访问请求中的DNS域名,则确定当前用户访问请求为免校验的待处理操作请求;

S3,若在白名单缓存池中未查找到当前用户访问请求中的DNS域名,则在非黑非白缓存池中查找当前用户访问请求中的DNS域名;

S4,若在非黑非白缓存池中查找到当前用户访问请求中的DNS域名,则拒绝响应当前用户访问请求;

S5,若在非黑非白缓存池中未查找到当前用户访问请求中的DNS域名,则判断当前用户访问请求中的DNS域名是否满足预先配置的白名单规则;

S6,若满足预先配置的白名单规则,则将当前用户访问请求中的DNS域名存储到白 名单缓存池;若不满足预先配置的白名单规则,则将当前用户访问请求中的DNS域名存储到非黑非白缓存池。

需要说明的是,在本实施例中,通过在预先建立的白名单缓存池中查找当前用户访问请求中的DNS域名所属的DNS域名缓存池,以识别该当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求。若在白名单缓存池中查找到当前用户访问请求中的DNS域名,也就表示该当前用户访问请求已经被验证过,则可以直接对其进行缓存加速操作。

进一步,若在白名单缓存池中未查找到当前用户访问请求中的DNS域名,且在非黑非白缓存池中未查找到当前用户访问请求中的DNS域名,则可以利用白名单规则对该当前访问请求进行匹配验证,若该当前访问请求的DNS域名满足预先配置的白名单规则,则将其存储到白名单缓存池中,以便于后续用户访问请求直接查找,从而实现减少校验时间,提高数据处理效率的目的。例如,如图3所示过程,若对当前用户访问请求精确匹配到白名单缓存池,则将其添加到白名单缓存池中。

作为一种可选的方案,第一识别子模块通过以下步骤实现根据当前用户访问请求中的DNS域名所属的DNS域名缓存池对当前用户访问请求进行识别包括:

S1,在黑名单缓存池中查找当前用户访问请求中的DNS域名;

S2,若在黑名单缓存池中查找到当前用户访问请求中的DNS域名,则拒绝响应当前用户访问请求;

S3,若在黑名单缓存池中未查找到当前用户访问请求中的DNS域名,则判断当前用户访问请求中的DNS域名是否满足预先配置的黑名单规则;

S4,若满足预先配置的黑名单规则,则将当前用户访问请求中的DNS域名存储到黑名单缓存池;若不满足预先配置的黑名单规则,则将当前用户访问请求中的DNS域名存储到非黑非白缓存池。

需要说明的是,在本实施例中,通过在预先建立的白名单缓存池中查找当前用户访问请求中的DNS域名所属的DNS域名缓存池,以识别该当前用户访问请求是否为GSLB调度系统中免校验的待处理操作请求。若在黑名单缓存池中查找到当前用户访问请求中的DNS域名,也就表示该当前用户访问请求已经被禁止执行快速缓存操作,则拒绝该当前访问请求。其中,上述黑名单缓存池的初始状态不为空。也就是说,在本实施例中,可以预先存储黑名单,也可以根据黑名单规则,对获取到的用户访问请求进行匹配,在匹配成功后再添加到黑名单缓存池中。例如,如图3所示过程,若对当前用户访问请求正则匹配到黑名单缓存池,则将其添加到黑名单缓存池中。

进一步,在本实施例中,若在黑名单缓存池中未查找到当前用户访问请求中的DNS域名,则可以利用黑名单规则对该当前访问请求进行匹配验证,若该当前访问请求的DNS 域名满足预先配置的黑名单规则,则将其存储到黑名单缓存池中,以便于后续用户访问请求直接查找,从而实现减少校验时间,提高数据处理效率的目的。

通过本申请提供的实施例,通过预先建立DNS域名缓存池,以实现准确识别出当前用户访问请求属于白名单缓存池,黑名单缓存池,还是非黑非白缓存池,从而使得服务器可以根据当前用户访问请求中的DNS域名所属的DNS域名缓存池,实现对当前用户访问请求的准确识别。也就是说,对DNS域名属于白名单缓存池的当前用户访问请求进行缓存加速操作,对DNS域名属于黑名单缓存池或非黑非白缓存池的当前用户访问请求拒绝响应。此外,随着资源缓存池的内容逐渐增多,需要进行域名验证的用户访问请求也就越少,这样不仅可以节约大量的域名校验时间,而且在配置了众多通配和正则规则的情况,更能体现出缓存池的优势,而无需每次都对域名进行规则的遍历校验。

作为一种可选的方案,识别模块606包括:

1)分段子模块,用于在获取到的当前用户访问请求的请求类型为http请求时,则对http请求中的URL进行分段,以得到当前用户访问请求的URL的URL域名及URL后缀;

2)第二识别子模块,用于根据当前用户访问请求的URL域名及URL后缀对当前用户访问请求进行识别。

具体结合以下示例进行说明,如图4所示,假设当前用户访问请求为http请求,该请求为:http://download.baidu.com/app/2015/QQ_V2.3.apk?uid=2323,对其进行URL校验。首先对该URL进行分段,以得到当前用户访问请求的URL的URL域名及URL后缀,其中,该当前用户访问请求的URL域名为“download.baidu.com”,URL后缀“.apk”。进一步,分别对当前用户访问请求的URL域名及URL后缀进行识别。

需要说明的是,在本实施例中,通过对URL进行分段匹配,从而实现有效减少正则匹配的次数。其中,对URL后缀的识别,就可以阻拦90%左右的HTTP请求,从而大大缓解GSLB调度系统的负载压力,达到提高数据处理速率的效果。

作为一种可选的方案,处理单元506包括:

1)第二处理模块,用于在当前用户访问请求的URL后缀属于预先配置的后缀资源池,且当前用户访问请求的域名满足预定域名规则时,对当前用户访问请求执行缓存加速操作。

可选地,在本实施例中,第二识别子模块通过以下步骤实现根据当前用户访问请求的请求类型所对应的资源缓存池对当前用户访问请求进行识别包括:

S1,判断当前用户访问请求的URL后缀是否属于预先配置的后缀资源池;

S2,若当前用户访问请求的URL后缀不属于预先配置的后缀资源池,则拒绝响应当 前用户访问请求;

S3,若当前用户访问请求的URL后缀属于预先配置的后缀资源池,则判断当前用户访问请求的域名是否满足预定域名规则;

S4,若满足预定域名规则,则确定当前用户访问请求为免校验的待处理操作请求;

S5,若不满足预定域名规则,拒绝响应当前用户访问请求。

具体结合以下示例进行说明,如图4所示,具体步骤可以如下:

S1,获取当前访问请求URL的URL后缀,判断URL后缀是否属于预先配置的后缀资源池,若不属于,则执行步骤S4;若属于,则执行步骤S3;

S2,遍历配置的预定域名规则对URL域名进行规则匹配,如果不符合规则,则执行步骤S3;如果符合规则,则执行步骤S4;

S3,拒绝响应当前用户访问请求;

S4,对当前用户访问请求执行缓存加速操作。

通过本申请提供的实施例,通过对URL分段匹配,从而实现有效减少正则匹配的次数,以达到缓解GSLB调度系统的负载压力,提高数据处理速率的效果。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。

实施例3

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:

S1,获取当前用户访问请求;

S2,根据预先建立的资源缓存池对获取到的当前用户访问请求进行识别;

S3,在识别出当前用户访问请求为GSLB调度系统中免校验的待处理操作请求时,对当前用户访问请求执行缓存加速操作。

可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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