一种域名配置信息设置方法、查询方法及装置转让专利

申请号 : CN201810462397.4

文献号 : CN110493364B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈小钟苗辉

申请人 : 贵州白山云科技股份有限公司

摘要 :

本文公开了一种域名配置信息设置方法、查询方法及装置,此域名配置信息设置方法包括:设置配置项矢量配置规则,保存域名集合中所有域名的信息;对域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据配置项矢量配置规则确定上述域名的每个配置项在上述域名的配置项矢量中的位置,在上述域名的配置项矢量的相应位置写入相应配置项的具体值。本发明实施例为不同的域名设置长度相同并且配置项相同的配置项矢量,可以对不同域名进行所需的配置并且配置速度快、效率高,在需要查询域名的配置项时,查询方便且快速。

权利要求 :

1.一种域名配置信息设置方法,其特征在于,包括:设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;

保存域名集合中所有域名的信息;

对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值。

2.如权利要求1所述的域名配置信息设置方法,其特征在于,所述方法还包括:在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。

3.如权利要求1所述的域名配置信息设置方法,其特征在于,所述保存域名集合中所有域名的信息包括:使用摘要映射算法将所述域名集合中所有域名的信息保存为摘要映射表。

4.如权利要求1所述的域名配置信息设置方法,其特征在于,所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;

所述方法还包括:判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包,在所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配置。

5.一种域名配置信息查询方法,其特征在于,包括:设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;

保存域名集合中所有域名的信息;

对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;

接收用于查询目标域名的目标配置项信息的请求,确定所述请求中的目标配置项,从保存的域名的信息中查找并提取所述目标域名的信息,根据所述顺序设置规则确定目标配置项在配置项矢量中的位置,从相应位置中提取出目标配置项的具体值。

6.如权利要求5所述的域名配置信息查询方法,其特征在于,所述从保存的域名的信息中查找并提取所述目标域名的信息包括:使用摘要映射算法从已保存为摘要映射表中提取目标域名信息。

7.如权利要求5所述的域名配置信息查询方法,其特征在于,所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;

所述方法还包括:判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包,在所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息提取所述域名中相应配置项中的值。

8.一种域名配置信息设置装置,其特征在于,包括:规则设置模块,用于设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;

保存模块,用于保存域名集合中所有域名的信息;

处理模块,用于对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值。

9.如权利要求8所述的域名配置信息设置装置,其特征在于,所述处理模块,还用于在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。

10.如权利要求8所述的域名配置信息设置装置,其特征在于,所述保存模块,还用于使用以下方法保存域名集合中所有域名的信息:使用摘要映射算法将所述域名集合中所有域名的信息保存为摘要映射表。

11.如权利要求8所述的域名配置信息设置装置,其特征在于,所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;

所述装置还包括:

判断模块,用于判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;

宏配置模块,用于确定所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配置。

12.一种域名配置信息查询装置,其特征在于,包括:规则设置模块,用于设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;

保存模块,用于保存域名集合中所有域名的信息;

处理模块,用于对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;

接收模块,用于接收用于查询目标域名的目标配置项信息的请求;

第一查询模块,用于确定所述请求中的目标配置项,从保存的域名的信息中查找并提取所述目标域名的信息,根据所述顺序设置规则确定目标配置项在配置项矢量中的位置,从相应位置中提取出目标配置项的具体值。

13.如权利要求12所述的域名配置信息查询装置,其特征在于,所述第一查询模块,还用于使用以下方法从保存的域名的信息中查找并提取所述目标域名的信息:使用摘要映射算法从已保存为摘要映射表中提取目标域名信息。

14.如权利要求12所述的域名配置信息查询装置,其特征在于,所述装置还包括:

判断模块,用于判断上述域名的配置项中是否包括宏配置包设置规则中的宏配置包;

所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;

第二查询模块,用于在上述域名的配置项中包括宏配置包设置规则中的宏配置包时,根据宏配置包设置规则中的宏配置包的配置信息提取所述域名中相应配置项中的值。

说明书 :

一种域名配置信息设置方法、查询方法及装置

技术领域

[0001] 本发明涉及互联网技术领域,尤其涉及一种域名配置信息设置方法、查询方法及装置。

背景技术

[0002] 在HTTP代理或者HTTP缓存等服务中,需要为各种不同的域名同时提供服务,例如为域名的配置项设置具体值。针对配置项举例如下:
[0003] 一,访问日志格式(logformat),
[0004] 二,删除url中的参数后作为存储url(store_cut_args)
[0005] 三,限速到每秒只能传输多少字节(limit_rate_second)
[0006] 四,限制是否可以访问(http_access)。
[0007] 在实际应用中,经常需要为不同的域名进行相同配置项的配置,但配置的具体值却不相同,例如为不同的域名设置不同的访问日志格式。
[0008] 实现此配置项的方法一般对配置项进行全局配置,与访问控制列表(ACL)配合使用,来控制针对不同的请求实现不同的需求功能。
[0009] 例如:要求www.qq.com的域名允许访问mp4和flv类型的资源,并且mp4的文件要求限速200KB,flv类型的资源要求限速100KB;要求www.baidu.com的域名允许访问flv类型的
资源,并且flv类型的文件限速200KB。配置过程如下:
[0010] acl qq_mp4 url http[s]://www.qq.com.*\.mp4\?.*
[0011] acl qq_flv url http[s]://www.qq.com.*\.flv\?.*
[0012] http_access allow qq_mp4
[0013] http_access allow qq_flv
[0014] limit_rate_second 200KB allow qq_mp4
[0015] limit_rate_second 100KB allow qq_flv
[0016] acl baidu_flv url http[s]://www.baidu.com.*\.flv\?.*
[0017] http_access allow baidu_flv
[0018] limit_rate_second 200KB allow baidu_flv
[0019] 在业务量较大的时候,使用ACL方式的配置过程较为繁琐和复杂,影响执行效率,并且全局化设置配置项不利于灵活的进行需求变更。
[0020] 所以为了解决以上的缺点,需要一种新的域名配置信息设置方法。

发明内容

[0021] 为了解决上述技术问题,本发明提供了一种域名配置信息设置方法、查询方法及装置。
[0022] 本发明提供的域名配置信息设置方法,包括:
[0023] 设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
[0024] 保存域名集合中所有域名的信息;
[0025] 对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量
中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值。
[0026] 上述域名配置信息设置方法还具有以下特点:
[0027] 所述方法还包括:在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
[0028] 上述域名配置信息设置方法还具有以下特点:
[0029] 所述保存域名集合中所有域名的信息包括:使用摘要映射算法将所述域名集合中所有域名的信息保存为摘要映射表。
[0030] 上述域名配置信息设置方法还具有以下特点:
[0031] 所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用
具体值;
[0032] 所述方法还包括:判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包,在所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述
宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配
置。
[0033] 本发明提供的域名配置信息查询方法,包括:
[0034] 设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
[0035] 保存域名集合中所有域名的信息;
[0036] 对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量
中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;
[0037] 接收用于查询目标域名的目标配置项信息的请求,确定所述请求中的目标配置项,从保存的域名的信息中查找并提取所述目标域名的信息,根据所述顺序设置规则确定
目标配置项在配置项矢量中的位置,从相应位置中提取出目标配置项的具体值。
[0038] 上述域名配置信息查询方法还具有以下特点:
[0039] 所述从保存的域名的信息中查找并提取所述目标域名的信息包括:使用摘要映射算法从已保存为摘要映射表中提取目标域名信息。
[0040] 上述域名配置信息查询方法还具有以下特点:
[0041] 所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用
具体值;
[0042] 所述方法还包括:判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包,在所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述
宏配置包设置规则中的宏配置包的配置信息提取所述域名中相应配置项中的值。
[0043] 本发明提供的域名配置信息设置装置,包括:
[0044] 规则设置模块,用于设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大
于1的整数;
[0045] 保存模块,用于保存域名集合中所有域名的信息;
[0046] 处理模块,用于对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域
名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体
值。
[0047] 上述域名配置信息设置装置还具有以下特点:
[0048] 所述处理模块,还用于在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
[0049] 上述域名配置信息设置装置还具有以下特点:
[0050] 所述保存模块,还用于使用以下方法保存域名集合中所有域名的信息:使用摘要映射算法将所述域名集合中所有域名的信息保存为摘要映射表。
[0051] 上述域名配置信息设置装置还具有以下特点:
[0052] 所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用
具体值;
[0053] 所述装置还包括:
[0054] 判断模块,用于判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;
[0055] 宏配置模块,用于确定所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏
配置包进行宏配置。
[0056] 本发明提供的域名配置信息查询装置,包括:
[0057] 规则设置模块,用于设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大
于1的整数;
[0058] 保存模块,用于保存域名集合中所有域名的信息;
[0059] 处理模块,用于对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域
名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体
值;
[0060] 接收模块,用于接收用于查询目标域名的目标配置项信息的请求;
[0061] 第一查询模块,用于确定所述请求中的目标配置项,从保存的域名的信息中查找并提取所述目标域名的信息,根据所述顺序设置规则确定目标配置项在配置项矢量中的位
置,从相应位置中提取出目标配置项的具体值。
[0062] 上述域名配置信息查询装置还具有以下特点:
[0063] 所述第一查询模块,还用于使用以下方法从保存的域名的信息中查找并提取所述目标域名的信息:使用摘要映射算法从已保存为摘要映射表中提取目标域名信息。
[0064] 上述域名配置信息查询装置还具有以下特点:
[0065] 所述装置还包括:
[0066] 判断模块,用于判断上述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;
[0067] 第二查询模块,用于在上述域名的配置项中包括宏配置包设置规则中的宏配置包时,根据宏配置包设置规则中的宏配置包的配置信息提取所述域名中相应配置项中的值。
[0068] 本发明实施例为不同的域名设置长度相同并且配置项相同的配置项矢量,可以对不同域名进行所需的配置并且配置速度快、效率高,在需要查询域名的配置项时,查询方便
且快速。

附图说明

[0069] 构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0070] 图1是实施例一中域名配置信息设置方法的流程图;
[0071] 图2是实施例二中域名配置信息设置装置的结构图;
[0072] 图3是实施例三中域名配置信息查询方法的流程图;
[0073] 图4是实施例四中域名配置信息查询装置的结构图。

具体实施方式

[0074] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员
在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要
说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0075] 实施例一
[0076] 如图1所示,域名配置信息设置方法包括:
[0077] 步骤101,设置配置项矢量配置规则,配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;配置项矢量包括N个配置项元素,其中,N为大于1的整数;
[0078] 步骤102,保存域名集合中所有域名的信息;
[0079] 步骤103,对域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据配置项矢量配置规则确定域名的每个配置项在域名的配置项矢量中的位
置,在域名的配置项矢量的相应位置写入相应配置项的具体值。
[0080] 其中,
[0081] 使用本方法的过程中,需要在配置项矢量中增加新的配置项时,修改配置项矢量配置规则,使修改后的配置项矢量配置规则中各配置项的顺序设置规则中包括新的配置
项,并且新的配置项在配置项矢量的位置沿用顺序设置规则中的排序方式。可以使新加入
的配置项的位置序号承接配置项矢量中最后一个配置项位置序号。例如:配置项矢量中共
有6个配置项,位置序号分别为0、1、2、3、4、5,需新加入两个新的配置项,则新加入的两个配
置项的序号为6,7。
[0082] 步骤102中,保存域名集合中所有域名的信息包括:使用摘要映射算法将域名集合中所有域名的信息保存为摘要映射表。例如:摘要映射算法包括各种可以将内容压缩后映
射为摘要的算法,例如此算法可以为哈希算法,摘要映射表为哈希表。
[0083] 在步骤103中在域名的配置项的个数少于N时,在域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。此缺省值可以是预设的默认值(例如NULL)。
[0084] 例如:设置配置项矢量包括五个配置项,例如五个配置项分别为:访问控制列表(acl)、日志格式(logformat)、请求访问控制(http_access)、删除参数存储控制(store_
cut_args)、每秒限速控制(limit_rate_second)。设置此五个配置项的顺序,例如:acl的位
置值=0,logformat位置值=1,http_access位置值=2,store_cut_args位置值=3,
limit_rate_second位置值=4。则配置项矢量的长度为5,包括的配置项依次为:acl、
logformat、http_access、store_cut_args、limit_rate_second。
[0085] 例一:
[0086] 以域名www.qq.com为例,具体执行过程如下:
[0087] DOMAIN www.qq.com
[0088] logformat%host%timestamp%url%status%resp_size%upstream_addr%upstream_status;此命令行的内容是设置日志格式为:域名、请求时间戳、请求的url、响应
的状态码、响应的大小、上游地址、上游响应的状态码。
[0089] http_access allow all;此命令行的内容是:允许所有的请求访问。
[0090] DOMAIN END
[0091] DOMAIN www.baidu.com
[0092] acl hhh url.*\.mp4\?.*此命令行的内容是:定义一个名称为hhh的acl,这个acl匹配mp4类型的请求。
[0093] logformat%host%timestamp%url%status%resp_size此命令行的内容是设置日志格式为:域名、请求时间戳、请求的url、响应的状态码、响应的大小。
[0094] http_access allow hhh此命令行的内容是:表示允许匹配haha ACL的请求访问,即允许mp4类型的请求访问。
[0095] store_cut_args allow all此命令行的内容是:表示对于匹配的请求,要去除参数作为存储url。
[0096] limit_rate_second 300KB allow all此命令行的内容是:表示对于有的访问请求均设置限制传输速度为每秒300KB。
[0097] DOMAIN END
[0098] 从以上格式可以看出www.qq.com和www.baidu.com对于五个配置项配置了不同的值(顺序可以不按照位置值进行,也可以不进行配置,即此配置项值为None)。对于
www.qq.com,只设置了配置项“logformat”的具体值”。对于www.baidu.com对五个配置项均
设置了具体值。在其它设置方式中,可以直接根据配置项矢量中位置值进行设置。
[0099] 具体的如下表所示:
[0100]
[0101]
[0102] 此方法中还可以实现宏配置,具体的:配置项矢量配置规则还包括宏配置包设置规则,此宏配置包设置规则包括宏配置包的配置信息,宏配置包的配置信息包括一个以上
配置项以及各配置项的通用具体值。在设置宏配置包时,可以提前将多个域名进行分类,在
不同的类别中选择出可进行通用配置的配置项构成宏配置包。
[0103] 在执行步骤103之前还包括:判断上述域名的配置项中是否包括宏配置包设置规则中的宏配置包,在域名的配置项中包括宏配置包设置规则中的宏配置包时,根据宏配置
包设置规则中的宏配置包的配置信息对域名中配置项中的宏配置包进行宏配置。在各域名
中同一宏配置包中同一配置项的信息改变时,可以调用宏配置包,使各域名中相应的配置
项的信息进行相同的改变。
[0104] 宏配置包既可以根据用户的特性进行配置,还可以根据用户所在的区域进行分类,还可以根据用户的不同类型(比如公众用户、政府用户等)进行配置,并且宏配置包是可
以动态变化的,即一个新的用户进来可以先进行判断属于什么类型,再根据类型选择宏配
置包。
[0105] 通过上述宏配置包的统一配置,可以省去多次重配置的步骤,提高配置效率。
[0106] 具体举例如下:
[0107] 例二:
[0108] 第一域名www.qq.com和第二域名www.baidu.com对应的配置项矢量包括8个配置项,分别为:第一父节点配置信息,是否可以访问第一父节点,第二父节点配置信息,是否可
以访问第二父节点,第三父节点配置信息,是否可以访问第三父节点,第四父节点配置信
息,是否可以访问第四父节点。
[0109] 使用现有方法中的配置方法包括:
[0110] DOMAIN www.qq.com
[0111] cache_peer parent 192.168.100.1 80name=beijing hash
[0112] 此配置表示cache_peer的类型是父节点,名称叫beijing,ip是192.168.100.1,端口是80,使用方式是hash方式。
[0113] cache_peer_access beijing allow all
[0114] 此配置表示允许所有的请求访问beijing父节点。
[0115] cache_peer parent 192.168.100.2 80name=shanghai hash
[0116] cache_peer_access shanghai allow all
[0117] cache_peer parent 192.168.100.3 80name=shenzhen hash
[0118] cache_peer_access shenzhen allow all
[0119] cache_peer parent 192.168.100.4 80name=guangzhou hash
[0120] cache_peer_access guangzhou allow all
[0121] DOMAIN END
[0122] DOMAIN www.baidu.com
[0123] cache_peer parent 192.168.100.1 80name=beijing hash
[0124] cache_peer_access beijing allow all
[0125] cache_peer parent 192.168.100.2 80name=shanghai hash
[0126] cache_peer_access shanghai allow all
[0127] cache_peer parent 192.168.100.3 80name=shenzhen hash
[0128] cache_peer_access shenzhen allow all
[0129] cache_peer parent 192.168.100.5 80name=wuhan hash
[0130] cache_peer_access wuhan allow all
[0131] DOMAIN END
[0132] 上述配置中,www.qq.com域名配置了beijing,shanghai,shenzhen,guangzhou四个父节点,www.baidu.com域名配置了beijing,shangahi,shenzhen,wuhan四个父节点。它
们有三个共同的父节点。如果beijing父节点的ip变了,那么需要将2个域名的配置都进行
修改,采用本方法中的上述方法,可以将共同的三个父节点构成成为宏配置,以简化配置。
[0133] 配置一个宏FirstLineCity,它的配置中包含了beijing,shanghai,shenzhen此3个父节点。后续的域名,利用关键字USE来使用这个宏。USE FirstLineCity即可以等同配置
了三个父节点。配置宏FirstLineCity时,还创建一个映射关系表macro_table,key为宏的
名称FirstLineCity,value为这个宏的配置,即三个父节点和其访问控制。
[0134] 使用本发明中使用宏配置的方法,具体配置方法如下:
[0135] MACRO FirstLineCity
[0136] cache_peer parent 192.168.100.1 80name=beijing hash
[0137] cache_peer_access beijing allow all
[0138] cache_peer parent 192.168.100.2 80name=shanghai hash
[0139] cache_peer_access shanghai allow all
[0140] cache_peer parent 192.168.100.3 80name=shenzhen hash
[0141] cache_peer_access shenzhen allow all
[0142] MACRO END
[0143] DOMAIN www.qq.com
[0144] USE FirstLineCity
[0145] cache_peer parent 192.168.100.4 80name=guangzhou hash
[0146] cache_peer_access guangzhou allow all
[0147] DOMAIN END
[0148] DOMAIN www.baidu.com
[0149] USE FirstLineCity
[0150] cache_peer parent 192.168.100.5 80name=wuhan hash
[0151] cache_peer_access wuhan allow all
[0152] DOMAIN END
[0153] 由上述可知,采用本发明的宏配置的方法,可以省去多次重配置的步骤,提高配置效率。
[0154] 实施例二
[0155] 如图2所示,域名配置信息设置装置包括:
[0156] 规则设置模块,用于设置配置项矢量配置规则,配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;配置项矢量包括N个配置项元素,其中,N为大于1的整
数;
[0157] 保存模块,用于保存域名集合中所有域名的信息;
[0158] 处理模块,用于对域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的
配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值。
[0159] 其中,
[0160] 处理模块还用于在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
[0161] 保存模块还用于使用以下方法保存域名集合中所有域名的信息:使用摘要映射算法将所述域名集合中所有域名的信息保存为摘要映射表。
[0162] 配置项矢量配置规则还包括宏配置包设置规则,此宏配置包设置规则包括宏配置包的配置信息,此宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;
[0163] 本装置还包括:
[0164] 判断模块,用于判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;
[0165] 宏配置模块,用于确定所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据此宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配
置包进行宏配置。
[0166] 实施例三
[0167] 在实施例一的基础上,实施例三提供了一种域名配置信息查询方法,如图3所示,包括:
[0168] 步骤301~303与上述域名配置信息设置方法中的步骤101~103相同。
[0169] 步骤304,接收用于查询目标域名的目标配置项信息的请求,确定请求中的目标配置项,从保存的域名的信息中查找并提取目标域名的信息,根据顺序设置规则确定目标配
置项在配置项矢量中的位置,从相应位置中提取出目标配置项的具体值。
[0170] 步骤304中从保存的域名的信息中查找并提取目标域名的信息具体包括:使用摘要映射算法从已保存为摘要映射表中提取目标域名信息。
[0171] 延用上述例一,假设收到针对www.baidu.com域名的请求http://www.baidu.com/aaa.mp4?vip=0,此时需要查看配置store_cut_args的情况,具体的查询方法包括以下步
骤:
[0172] 步骤1,通过hash表在已保存的hash表中查找www.baidu.com域名,获得www.baidu.com域名的配置项矢量。
[0173] 步骤2,根据顺序设置规则确定配置项store_cut_args在配置项矢量中的位置为3。
[0174] 步骤3,在配置项矢量的第3个位置读取其中的值为“allow all”。
[0175] 步骤4,根据查找到的配置项的具体值进行相应的逻辑处理,即需要去除参数进行缓存(缓存url为http://www.baidu.com/aaa.mp4的资源)。
[0176] 在配置进程中使用了宏配置的方式时,在查询配置项信息时还可以使用配置项进行查询,具体的,判断此域名的配置项中是否包括宏配置包设置规则中的宏配置包,在此域
名的配置项中包括此宏配置包设置规则中的宏配置包时,根据此宏配置包设置规则中的宏
配置包的配置信息提取域名中相应配置项中的值。
[0177] 延用上述例二:在后续解析某个域名配置的时候,遇到USE FirstLineCity,那么就去macro_table中查找名称为FirstLineCity的宏,将它对应的value,作为相应的值。
[0178] 实施例四
[0179] 在实施例三的基础上,实施例四提供了一种域名配置信息查询装置,如图4所示,包括:
[0180] 规则设置模块,用于设置配置项矢量配置规则,此配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;此配置项矢量包括N个配置项元素,其中,N为大于1
的整数;
[0181] 保存模块,用于保存域名集合中所有域名的信息;
[0182] 处理模块,用于对域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据配置项矢量配置规则确定上述域名的每个配置项在此域名的配置项
矢量中的位置,在此域名的配置项矢量的相应位置写入相应配置项的具体值;
[0183] 接收模块,用于接收用于查询目标域名的目标配置项信息的请求;
[0184] 第一查询模块,用于确定上述请求中的目标配置项,从保存的域名的信息中查找并提取目标域名的信息,根据顺序设置规则确定目标配置项在配置项矢量中的位置,从相
应位置中提取出目标配置项的具体值。
[0185] 其中,查询模块还用于使用以下方法从保存的域名的信息中查找并提取目标域名的信息:使用摘要映射算法从已保存为摘要映射表中提取目标域名信息。
[0186] 上述装置还包括:
[0187] 判断模块,用于判断上述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;
[0188] 第二查询模块,用于在上述域名的配置项中包括宏配置包设置规则中的宏配置包时,根据宏配置包设置规则中的宏配置包的配置信息提取所述域名中相应配置项中的值。
[0189] 本发明实施例为不同的域名设置长度相同并且配置项相同的配置项矢量,可以对不同域名进行所需的配置并且配置速度快、效率高,在需要查询域名的配置项时,查询方便
且快速。
[0190] 上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
[0191] 本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可
选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述
实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本发明不限制于任何特定形式的硬件和软件的结合。
[0192] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没
有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限
制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的物品或者设备中还存
在另外的相同要素。
[0193] 以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改
或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范
围当中。