CN110661892B - 一种域名配置信息处理方法及装置 - Google Patents
一种域名配置信息处理方法及装置 Download PDFInfo
- Publication number
- CN110661892B CN110661892B CN201810685339.8A CN201810685339A CN110661892B CN 110661892 B CN110661892 B CN 110661892B CN 201810685339 A CN201810685339 A CN 201810685339A CN 110661892 B CN110661892 B CN 110661892B
- Authority
- CN
- China
- Prior art keywords
- domain name
- configuration
- configuration file
- macro
- setting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本文公开了一种域名配置信息处理方法及装置,此方法包括:设置配置项矢量配置规则,配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;设置全局通用配置信息,在非内存保存区设置域名对应的域名配置文件;加载全局通用配置信息;接收访问请求,确定访问请求中包含的域名,在内存中已加载且解析的域名配置文件集合中查找是否包括与所述访问请求中包含的域名对应的域名配置文件;如果否,从所述非内存保存区加载与所述目标域名对应的域名配置文件。本发明可以单独的为不同的域名设置域名配置文件,在需要使用某些域名设置时才加载相应的域名配置文件,可以有效防止不相关域名的域名配置文件的重复加载,节省处理资源。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种域名配置信息处理方法及装置。
背景技术
在HTTP代理或者HTTP缓存等服务中,需要为各种不同的域名同时提供服务,在网络规模逐渐变大后,需要服务的域名可能会达到几万个之多,每个域名都会需要设置针对性的配置,如果按照原有技术中的设置方式,包含所有域名的配置信息的全局配置文件的容量将会非常巨大,在需要修改一个域名的配置或者增加或者删除域名配置的时候,需要重新加载和解析整个全局配置文件,耗费时间较长,并且会对服务质量造成影响。
所以为了解决以上的缺点,需要一种新的域名配置信息处理方法。
发明内容
为了解决上述技术问题,本发明提供了一种域名配置信息处理方法及装置。
本发明提供的域名配置信息处理方法,包括:
设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
设置全局通用配置信息,在非内存保存区设置域名对应的域名配置文件;其中,设置域名对应的域名配置文件包括:保存域名集合中所有域名的信息;对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;
加载所述全局通用配置信息;
接收访问请求,确定所述访问请求中包含的域名,在内存中已加载且解析的域名配置文件集合中查找是否包括与所述访问请求中包含的域名对应的域名配置文件;
如果是,从所述已加载且解析的域名配置文件集合中提取与所述目标域名对应的域名配置文件;如果否,从所述非内存保存区加载与所述目标域名对应的域名配置文件。
上述域名配置信息设置方法还具有以下特点:
所述方法还包括:在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
上述域名配置信息设置方法还具有以下特点:
所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;
所述方法还包括:判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包,在所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配置。
上述域名配置信息设置方法还具有以下特点:
所述方法还包括:
在需要增加新的域名对应的域名配置文件时,在所述非内存保存区设置新的域名配置文件;
在需要删除目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中删除所述目标域名对应的域名配置文件;
在需要修改目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中更新所述目标域名对应的域名配置文件。
上述域名配置信息设置方法还具有以下特点:
从所述非内存保存区加载与所述目标域名对应的域名配置文件后,所述方法还包括:将从所述非内存保存区加载的与所述目标域名对应的域名配置文件加入所述域名配置文件集合。
上述域名配置信息设置方法还具有以下特点:
所述方法还包括:统计所述域名的访问热度,确定访问热度最高的N个域名,在系统退出时保存所述N个域名对应的域名配置文件,在系统重新启动时,加载所述N个域名对应的域名配置文件,并添加至所述域名配置文件集合,其中N为大于0的整数。
上述域名配置信息设置方法还具有以下特点:
所述方法还包括:检测所述域名配置文件集合中各域名配置文件的最后一次使用时间与当前时间的时长差,从所述域名配置文件集合中删除时长差大于预设时长的域名配置文件。
本发明提供的域名配置信息处理装置,包括:
第一设置模块,用于设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
第二设置模块,用于设置全局通用配置信息,在非内存保存区设置域名对应的域名配置文件;还用于使用以下方法设置域名对应的域名配置文件:保存域名集合中所有域名的信息;对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;
加载模块,用于加载所述全局通用配置信息;
接收模块,用于接收访问请求;
确定模块,用于确定所述访问请求中包含的域名;
查找模块,用于在内存中已加载且解析的域名配置文件集合中查找是否包括与所述访问请求中包含的域名对应的域名配置文件;
处理模块,用于在所述查找模块在内存中已加载且解析的域名配置文件集合中查找到包括与所述访问请求中包含的域名对应的域名配置文件时,从所述已加载且解析的域名配置文件集合中提取与所述目标域名对应的域名配置文件;在所述查找模块在内存中已加载且解析的域名配置文件集合中未查找到包括与所述访问请求中包含的域名对应的域名配置文件时,从所述非内存保存区加载与所述目标域名对应的域名配置文件。
上述域名配置信息设置装置还具有以下特点:
所述第二设置模块,还用于在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
上述域名配置信息设置装置还具有以下特点:
所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;
所述装置还包括:
判断模块,用于判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;
宏配置模块,用于确定所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配置。
上述域名配置信息设置装置还具有以下特点:
所述第二设置模块还包括维护单元;
所述维护单元,用于在需要增加新的域名对应的域名配置文件时,在所述非内存保存区设置新的域名配置文件;
还用于在需要删除目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中删除所述目标域名对应的域名配置文件;
还用于在需要修改目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中更新所述目标域名对应的域名配置文件。
上述域名配置信息设置装置还具有以下特点:
所述处理模块,还用于在从所述非内存保存区加载与所述目标域名对应的域名配置文件后,将从所述非内存保存区加载的与所述目标域名对应的域名配置文件加入所述域名配置文件集合。
上述域名配置信息设置装置还具有以下特点:
所述装置还包括:
统计模块,用于统计所述域名的访问热度,确定访问热度最高的N个域名;
保存模块,用于在系统退出时保存所述N个域名对应的域名配置文件;
域名配置文件集合维护模块,用于在系统重新启动时,加载所述N个域名对应的域名配置文件,并添加至所述域名配置文件集合,其中N为大于0的整数。
上述域名配置信息设置装置还具有以下特点:
所述装置还包括:
检测模块,用于检测所述域名配置文件集合中各域名配置文件的最后一次使用时间与当前时间的时长差;
域名配置文件集合维护模块,用于从所述域名配置文件集合中删除时长差大于预设时长的域名配置文件。
本发明可以单独的为不同的域名设置域名配置文件,在需要使用某些域名设置时才加载相应的域名配置文件,可以有效防止不相关域名的域名配置文件的重复加载,节省处理资源,提高服务效率,提高客户的满意度,并且单独域名的域名配置文件的单独管理方式,可以提高信息维护的便捷性。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是实施例中域名配置信息处理方法的流程图;
图2是实施例中域名配置信息处理装置的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
如图1所示,域名配置信息处理方法包括:
步骤101,设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
步骤102,设置全局通用配置信息,在非内存保存区设置域名对应的域名配置文件;其中,设置域名对应的域名配置文件包括:保存域名集合中所有域名的信息;对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;
步骤103,加载全局通用配置信息;
步骤104,接收访问请求,确定访问请求中包含的域名,在内存中已加载且解析的域名配置文件集合中查找是否包括与访问请求中包含的域名对应的域名配置文件;
步骤105,如果是,从已加载且解析的域名配置文件集合中提取与目标域名对应的域名配置文件;如果否,从非内存保存区加载与目标域名对应的域名配置文件。
其中,
使用本方法的过程中,需要在配置项矢量中增加新的配置项时,修改配置项矢量配置规则,使修改后的配置项矢量配置规则中各配置项的顺序设置规则中包括新的配置项,并且新的配置项在配置项矢量的位置沿用顺序设置规则中的排序方式。可以使新加入的配置项的位置序号承接配置项矢量中最后一个配置项位置序号。例如:配置项矢量中共有6个配置项,位置序号分别为0、1、2、3、4、5,需新加入两个新的配置项,则新加入的两个配置项的序号为6,7。
步骤102中,保存域名集合中所有域名的信息包括:使用摘要映射算法将域名集合中所有域名的信息保存为摘要映射表。例如:摘要映射算法包括各种可以将内容压缩后映射为摘要的算法,例如此算法可以为哈希算法,摘要映射表为哈希表。
在步骤102中在域名的配置项的个数少于N时,在域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。此缺省值可以是预设的默认值(例如NULL)。
例如:设置配置项矢量包括五个配置项,例如五个配置项分别为:访问控制列表(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。
例一:
以域名www.qq.com为例,具体执行过程如下:
DOMAIN www.qq.com
logformat %host %timestamp %url %status %resp_size %upstream_addr %upstream_status;此命令行的内容是设置日志格式为:域名、请求时间戳、请求的url、响应的状态码、响应的大小、上游地址、上游响应的状态码。
http_access allow all;此命令行的内容是:允许所有的请求访问。
DOMAIN END
DOMAIN www.baidu.com
acl hhh url.*\.mp4\?.*此命令行的内容是:定义一个名称为hhh的acl,这个acl匹配mp4类型的请求。
logformat %host %timestamp %url %status %resp_size此命令行的内容是设置日志格式为:域名、请求时间戳、请求的url、响应的状态码、响应的大小。
http_access allow hhh此命令行的内容是:表示允许匹配haha ACL的请求访问,即允许mp4类型的请求访问。
store_cut_args allow all此命令行的内容是:表示对于匹配的请求,要去除参数作为存储url。
limit_rate_second 300KB allow all此命令行的内容是:表示对于有的访问请求均设置限制传输速度为每秒300KB。
DOMAIN END
从以上格式可以看出www.qq.com和www.baidu.com对于五个配置项配置了不同的值(顺序可以不按照位置值进行,也可以不进行配置,即此配置项值为None)。对于www.qq.com,只设置了配置项“logformat”的具体值”。对于www.baidu.com对五个配置项均设置了具体值。在其它设置方式中,可以直接根据配置项矢量中位置值进行设置。
具体的如下表所示:
此方法中还可以实现宏配置,具体的:配置项矢量配置规则还包括宏配置包设置规则,此宏配置包设置规则包括宏配置包的配置信息,宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值。在设置宏配置包时,可以提前将多个域名进行分类,在不同的类别中选择出可进行通用配置的配置项构成宏配置包。
在执行步骤102之前还包括:判断上述域名的配置项中是否包括宏配置包设置规则中的宏配置包,在域名的配置项中包括宏配置包设置规则中的宏配置包时,根据宏配置包设置规则中的宏配置包的配置信息对域名中配置项中的宏配置包进行宏配置。在各域名中同一宏配置包中同一配置项的信息改变时,可以调用宏配置包,使各域名中相应的配置项的信息进行相同的改变。
宏配置包既可以根据用户的特性进行配置,还可以根据用户所在的区域进行分类,还可以根据用户的不同类型(比如公众用户、政府用户等)进行配置,并且宏配置包是可以动态变化的,即一个新的用户进来可以先进行判断属于什么类型,再根据类型选择宏配置包。
通过上述宏配置包的统一配置,可以省去多次重配置的步骤,提高配置效率。
具体举例如下:
例二:
第一域名www.qq.com和第二域名www.baidu.com对应的配置项矢量包括8个配置项,分别为:第一父节点配置信息,是否可以访问第一父节点,第二父节点配置信息,是否可以访问第二父节点,第三父节点配置信息,是否可以访问第三父节点,第四父节点配置信息,是否可以访问第四父节点。
使用现有方法中的配置方法包括:
DOMAIN www.qq.com
cache_peer parent 192.168.100.1 80name=beijing hash
此配置表示cache_peer的类型是父节点,名称叫beijing,ip是192.168.100.1,端口是80,使用方式是hash方式。
cache_peer_access beijing allow all
此配置表示允许所有的请求访问beijing父节点。
cache_peer parent 192.168.100.2 80name=shanghai hash
cache_peer_access shanghai allow all
cache_peer parent 192.168.100.3 80name=shenzhen hash
cache_peer_access shenzhen allow all
cache_peer parent 192.168.100.4 80name=guangzhou hash
cache_peer_access guangzhou allow all
DOMAIN END
DOMAIN www.baidu.com
cache_peer parent 192.168.100.1 80name=beijing hash
cache_peer_access beijing allow all
cache_peer parent 192.168.100.2 80name=shanghai hash
cache_peer_access shanghai allow all
cache_peer parent 192.168.100.3 80name=shenzhen hash
cache_peer_access shenzhen allow all
cache_peer parent 192.168.100.5 80name=wuhan hash
cache_peer_access wuhan allow all
DOMAIN END
上述配置中,www.qq.com域名配置了beijing,shanghai,shenzhen,guangzhou四个父节点,www.baidu.com域名配置了beijing,shangahi,shenzhen,wuhan四个父节点。它们有三个共同的父节点。如果beijing父节点的ip变了,那么需要将2个域名的配置都进行修改,采用本方法中的上述方法,可以将共同的三个父节点构成成为宏配置,以简化配置。
配置一个宏FirstLineCity,它的配置中包含了beijing,shanghai,shenzhen此3个父节点。后续的域名,利用关键字USE来使用这个宏。
USE FirstLineCity即可以等同配置了三个父节点。配置宏FirstLineCity时,还创建一个映射关系表macro_table,key为宏的名称FirstLineCity,value为这个宏的配置,即三个父节点和其访问控制。
使用本发明中使用宏配置的方法,具体配置方法如下:
MACRO FirstLineCity
cache_peer parent 192.168.100.1 80name=beijing hash
cache_peer_access beijing allow all
cache_peer parent 192.168.100.2 80name=shanghai hash
cache_peer_access shanghai allow all
cache_peer parent 192.168.100.3 80name=shenzhen hash
cache_peer_access shenzhen allow all
MACRO END
DOMAIN www.qq.com
USE FirstLineCity
cache_peer parent 192.168.100.4 80name=guangzhou hash
cache_peer_access guangzhou allow all
DOMAIN END
DOMAIN www.baidu.com
USE FirstLineCity
cache_peer parent 192.168.100.5 80name=wuhan hash
cache_peer_access wuhan allow all
DOMAIN END
由上述可知,采用本发明的宏配置的方法,可以省去多次重配置的步骤,提高配置效率。
本方法还包括:
在需要增加新的域名对应的域名配置文件时,在非内存保存区设置新的域名配置文件;
在需要删除目标域名对应的域名配置文件时,在非内存保存区中的域名配置文件中删除目标域名对应的域名配置文件。
全局通用配置信息包括:与域名不相关的基础配置信息,例如缓存目录配置,内存使用控制,读写缓存大小配置,监听的端口配置等,以及所有域名公用的配置信息,比如流量统计配置。
从非内存保存区加载与目标域名对应的域名配置文件后,本方法还包括:将从非内存保存区加载的与目标域名对应的域名配置文件加入域名配置文件集合。
本方法还包括:统计域名的访问热度,确定访问热度最高的N个域名,在系统退出时保存N个域名对应的域名配置文件,在系统重新启动时,加载N个域名对应的域名配置文件,并添加至域名配置文件集合,其中N为大于0的整数。
本方法还包括:检测所述域名配置文件集合中各域名配置文件的最后一次使用时间与当前时间的时长差,从所述域名配置文件集合中删除时长差大于预设时长的域名配置文件。
本发明可以单独的为不同的域名设置域名配置文件,在需要使用某些域名设置时才加载相应的域名配置文件,可以有效防止不相关域名的域名配置文件的重复加载,节省处理资源,提高服务效率,提高客户的满意度,并且单独域名的域名配置文件的单独管理方式,可以提高信息维护的便捷性。
图2是实施例中域名配置信息处理装置的结构图,域名配置信息处理装置包括:
第一设置模块,用于设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
第二设置模块,用于设置全局通用配置信息,在非内存保存区设置域名对应的域名配置文件;还用于使用以下方法设置域名对应的域名配置文件:保存域名集合中所有域名的信息;对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;
加载模块,用于加载所述全局通用配置信息;
接收模块,用于接收访问请求;
确定模块,用于确定所述访问请求中包含的域名;
查找模块,用于在内存中已加载且解析的域名配置文件集合中查找是否包括与所述访问请求中包含的域名对应的域名配置文件;
处理模块,用于在所述查找模块在内存中已加载且解析的域名配置文件集合中查找到包括与所述访问请求中包含的域名对应的域名配置文件时,从所述已加载且解析的域名配置文件集合中提取与所述目标域名对应的域名配置文件;在所述查找模块在内存中已加载且解析的域名配置文件集合中未查找到包括与所述访问请求中包含的域名对应的域名配置文件时,从所述非内存保存区加载与所述目标域名对应的域名配置文件。
其中,
第二设置模块,还用于在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;
本装置还包括:
判断模块,用于判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;
宏配置模块,用于确定所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配置。
上述第二设置模块还包括维护单元,用于在需要增加新的域名对应的域名配置文件时,在所述非内存保存区设置新的域名配置文件;还用于在需要删除目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中删除所述目标域名对应的域名配置文件;还用于在需要修改目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中更新所述目标域名对应的域名配置文件。
处理模块,还用于在从所述非内存保存区加载与所述目标域名对应的域名配置文件后,将从所述非内存保存区加载的与所述目标域名对应的域名配置文件加入所述域名配置文件集合。
本装置还包括:
统计模块,用于统计所述域名的访问热度,确定访问热度最高的N个域名;
保存模块,用于在系统退出时保存所述N个域名对应的域名配置文件;
域名配置文件集合维护模块,用于在系统重新启动时,加载所述N个域名对应的域名配置文件,并添加至所述域名配置文件集合,其中N为大于0的整数。
本装置还包括:
检测模块,用于检测所述域名配置文件集合中各域名配置文件的最后一次使用时间与当前时间的时长差;
域名配置文件集合维护模块,用于从所述域名配置文件集合中删除时长差大于预设时长的域名配置文件。
下面通过具体实施例说明本实施例。
具体实施例:
设置全局文件cache.conf,用于保存全局通用配置信息。
发送缓冲数据包大小,send_buffer_size 16384
最大对像大小,maximum_object_size 200GB
内存替换策略,cache_replace_policy lru
连接最大时长,connect_timeout 30seconds
读取最大时长,read_timeout 60seconds
设置domains文件夹,在此domains文件夹下设置第一域名www.qq.com的域名配置文件www.qq.com.conf,在此domains文件夹下设置第二域名www.baidu.com的域名配置文件www.baidu.com.conf。
具体形式为:
domains/www.qq.com.conf
domains/www.baidu.com.conf
启动系统,加载全局文件cache.conf,从而加载全局通用配置信息。此时未解析每个域名的域名配置文件,在内存中的域名配置文件集合为空,此域名配置文件集合可以以hash表的形式存在。
系统收到访问请求为http://www.qq.com/news/1895837.jpg,确定此访问请求中包含的域名为第一域名,在内存中已加载且解析的域名配置文件集合hash表中查找是否存在此第一域名对应的域名配置文件,未查找到时,在domains目录下加载对应的域名配置文件,加载成功后,根据加载成功的域名配置文件处理此访问请求,加载不成功时,拒绝处理访问请求或者采用预设的默认操作。
系统再次收到包含第一域名的访问请求后,例如收到访问请求为http:// www.qq.com/news/2000.jpg,则在内存中已加载且解析的域名配置文件集合hash表中可查找到已否存在此第一域名对应的域名配置文件,则无需再次加载和解析第一域名对应的域名配置文件,可以节省加载域名配置文件所耗费的处理量。
检测域名配置文件集合中各域名配置文件的最后一次使用时间与当前时间的时长差,从域名配置文件集合中删除时长差大于预设时长的域名配置文件,从而可以删除长期未使用的已加载且解析的域名配置信息,节省内存空间。例如在域名配置文件集合中对每个加载的域名配置文件设置被使用的时间戳,每12小时遍历所有的域名配置文件,发现有域名配置文件24小时未被使用,那么可以暂时将其从内存中的域名hash表中删除。
在需要新增、删除、更新目标域名对应的域名配置文件时,在domain文件夹内直接新增、删除、更新目标域名对应的域名配置文件。新增域名配置文件时,可以手动向系统发送命令要求系统要求加载此新增的域名配置文件,也可以等系统收到针对此新增加的域名配置文件对应的目标域名的访问请求后再加载。修改或删除域名配置文件后,可以手动向系统发送命令要求系统要求加载此更新后的域名配置文件。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
Claims (14)
1.一种域名配置信息处理方法,其特征在于,包括:
设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
设置全局通用配置信息,在非内存保存区设置域名对应的域名配置文件;其中,设置域名对应的域名配置文件包括:保存域名集合中所有域名的信息;对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;
加载所述全局通用配置信息;
接收访问请求,确定所述访问请求中包含的域名,在内存中已加载且解析的域名配置文件集合中查找是否包括与所述访问请求中包含的域名对应的域名配置文件;
如果是,从所述已加载且解析的域名配置文件集合中提取与目标域名对应的域名配置文件;如果否,从所述非内存保存区加载与所述目标域名对应的域名配置文件。
2.如权利要求1所述的域名配置信息处理方法,其特征在于,
所述方法还包括:在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
3.如权利要求1所述的域名配置信息处理方法,其特征在于,
所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;
所述方法还包括:判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包,在所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配置。
4.如权利要求1所述的域名配置信息处理方法,其特征在于,
所述方法还包括:
在需要增加新的域名对应的域名配置文件时,在所述非内存保存区设置新的域名配置文件;
在需要删除目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中删除所述目标域名对应的域名配置文件;
在需要修改目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中更新所述目标域名对应的域名配置文件。
5.如权利要求1所述的域名配置信息处理方法,其特征在于,
从所述非内存保存区加载与所述目标域名对应的域名配置文件后,所述方法还包括:将从所述非内存保存区加载的与所述目标域名对应的域名配置文件加入所述域名配置文件集合。
6.如权利要求1所述的域名配置信息处理方法,其特征在于,
所述方法还包括:统计所述域名的访问热度,确定访问热度最高的N个域名,在系统退出时保存所述N个域名对应的域名配置文件,在系统重新启动时,加载所述N个域名对应的域名配置文件,并添加至所述域名配置文件集合,其中N为大于0的整数。
7.如权利要求1所述的域名配置信息处理方法,其特征在于,
所述方法还包括:检测所述域名配置文件集合中各域名配置文件的最后一次使用时间与当前时间的时长差,从所述域名配置文件集合中删除时长差大于预设时长的域名配置文件。
8.一种域名配置信息处理装置,其特征在于,包括:
第一设置模块,用于设置配置项矢量配置规则,所述配置项矢量配置规则包括配置项矢量中的各配置项的顺序设置规则;所述配置项矢量包括N个配置项元素,其中,N为大于1的整数;
第二设置模块,用于设置全局通用配置信息,在非内存保存区设置域名对应的域名配置文件;还用于使用以下方法设置域名对应的域名配置文件:保存域名集合中所有域名的信息;对所述域名集合中每个域名执行以下内容:确定域名的配置项以及各配置项的具体值,根据所述配置项矢量配置规则确定所述域名的每个配置项在所述域名的配置项矢量中的位置,在所述域名的配置项矢量的相应位置写入相应配置项的具体值;
加载模块,用于加载所述全局通用配置信息;
接收模块,用于接收访问请求;
确定模块,用于确定所述访问请求中包含的域名;
查找模块,用于在内存中已加载且解析的域名配置文件集合中查找是否包括与所述访问请求中包含的域名对应的域名配置文件;
处理模块,用于在所述查找模块在内存中已加载且解析的域名配置文件集合中查找到包括与所述访问请求中包含的域名对应的域名配置文件时,从所述已加载且解析的域名配置文件集合中提取与目标域名对应的域名配置文件;在所述查找模块在内存中已加载且解析的域名配置文件集合中未查找到包括与所述访问请求中包含的域名对应的域名配置文件时,从所述非内存保存区加载与所述目标域名对应的域名配置文件。
9.如权利要求8所述的域名配置信息处理装置,其特征在于,
所述第二设置模块,还用于在所述域名的配置项的个数少于N时,在所述域名的配置项矢量中未写入配置项的位置写入此位置的缺省值。
10.如权利要求8所述的域名配置信息处理装置,其特征在于,
所述配置项矢量配置规则还包括宏配置包设置规则,所述宏配置包设置规则包括宏配置包的配置信息,所述宏配置包的配置信息包括一个以上配置项以及各配置项的通用具体值;
所述装置还包括:
判断模块,用于判断所述域名的配置项中是否包括所述宏配置包设置规则中的宏配置包;
宏配置模块,用于确定所述域名的配置项中包括所述宏配置包设置规则中的宏配置包时,根据所述宏配置包设置规则中的宏配置包的配置信息对所述域名中配置项中的宏配置包进行宏配置。
11.如权利要求8所述的域名配置信息处理装置,其特征在于,
所述第二设置模块还包括维护单元;
所述维护单元,用于在需要增加新的域名对应的域名配置文件时,在所述非内存保存区设置新的域名配置文件;
还用于在需要删除目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中删除所述目标域名对应的域名配置文件;
还用于在需要修改目标域名对应的域名配置文件时,在所述非内存保存区中的域名配置文件中更新所述目标域名对应的域名配置文件。
12.如权利要求8所述的域名配置信息处理装置,其特征在于,
所述处理模块,还用于在从所述非内存保存区加载与所述目标域名对应的域名配置文件后,将从所述非内存保存区加载的与所述目标域名对应的域名配置文件加入所述域名配置文件集合。
13.如权利要求8所述的域名配置信息处理装置,其特征在于,
所述装置还包括:
统计模块,用于统计所述域名的访问热度,确定访问热度最高的N个域名;
保存模块,用于在系统退出时保存所述N个域名对应的域名配置文件;
域名配置文件集合维护模块,用于在系统重新启动时,加载所述N个域名对应的域名配置文件,并添加至所述域名配置文件集合,其中N为大于0的整数。
14.如权利要求8所述的域名配置信息处理装置,其特征在于,
所述装置还包括:
检测模块,用于检测所述域名配置文件集合中各域名配置文件的最后一次使用时间与当前时间的时长差;
域名配置文件集合维护模块,用于从所述域名配置文件集合中删除时长差大于预设时长的域名配置文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810685339.8A CN110661892B (zh) | 2018-06-28 | 2018-06-28 | 一种域名配置信息处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810685339.8A CN110661892B (zh) | 2018-06-28 | 2018-06-28 | 一种域名配置信息处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110661892A CN110661892A (zh) | 2020-01-07 |
CN110661892B true CN110661892B (zh) | 2022-06-28 |
Family
ID=69027331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810685339.8A Active CN110661892B (zh) | 2018-06-28 | 2018-06-28 | 一种域名配置信息处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110661892B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114448787A (zh) * | 2021-12-27 | 2022-05-06 | 天翼云科技有限公司 | 一种cdn系统频道配置方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101444072A (zh) * | 2006-05-17 | 2009-05-27 | 法国电信公司 | 用于管理网络中的域名的服务器和方法 |
CN103220355A (zh) * | 2013-04-19 | 2013-07-24 | 网宿科技股份有限公司 | 内容分发网络中的多用户配置方法 |
CN105897942A (zh) * | 2015-09-17 | 2016-08-24 | 乐视云计算有限公司 | 一种域名解析系统及域名解析方法 |
CN107846483A (zh) * | 2017-11-10 | 2018-03-27 | 北京粉笔蓝天科技有限公司 | 一种域名解析方法、系统和服务器 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6892231B2 (en) * | 2000-11-02 | 2005-05-10 | Microsoft Corporation | Method and apparatus for verifying the contents of a global configuration file |
US6976063B1 (en) * | 2000-11-02 | 2005-12-13 | Microsoft Corporation | Method and system for dynamically configuring a server computer |
US6725367B2 (en) * | 2001-01-29 | 2004-04-20 | Microsoft Corporation | Methods and systems for constructing and interpreting hierarchical configuration files |
US8590032B2 (en) * | 2003-12-10 | 2013-11-19 | Aventail Llc | Rule-based routing to resources through a network |
CN101242307A (zh) * | 2008-02-01 | 2008-08-13 | 刘峰 | 用嵌入代码代理日志实现网站访问分析系统与方法 |
CN103593439B (zh) * | 2013-11-15 | 2016-08-31 | 太仓市同维电子有限公司 | 一种在配置文件中保存临时数据的方法 |
CN107707682B (zh) * | 2017-04-19 | 2018-07-06 | 贵州白山云科技有限公司 | 一种bind配置加载优化方法及装置 |
-
2018
- 2018-06-28 CN CN201810685339.8A patent/CN110661892B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101444072A (zh) * | 2006-05-17 | 2009-05-27 | 法国电信公司 | 用于管理网络中的域名的服务器和方法 |
CN103220355A (zh) * | 2013-04-19 | 2013-07-24 | 网宿科技股份有限公司 | 内容分发网络中的多用户配置方法 |
CN105897942A (zh) * | 2015-09-17 | 2016-08-24 | 乐视云计算有限公司 | 一种域名解析系统及域名解析方法 |
CN107846483A (zh) * | 2017-11-10 | 2018-03-27 | 北京粉笔蓝天科技有限公司 | 一种域名解析方法、系统和服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN110661892A (zh) | 2020-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110324177B (zh) | 一种微服务架构下的服务请求处理方法、系统及介质 | |
US8407721B2 (en) | Communication interface selection on multi-homed devices | |
CN111200657B (zh) | 一种管理资源状态信息的方法和资源下载系统 | |
US20120215741A1 (en) | LDAP Replication Priority Queuing Mechanism | |
CN108008918A (zh) | 数据处理方法、存储节点及分布式存储系统 | |
US8180838B2 (en) | Efficiently managing modular data storage systems | |
US10817203B1 (en) | Client-configurable data tiering service | |
CN111753223A (zh) | 一种访问控制的方法和装置 | |
CN104239353B (zh) | 一种web分类控制和日志审计的方法 | |
US8930518B2 (en) | Processing of write requests in application server clusters | |
CN108319634B (zh) | 分布式文件系统的目录访问方法和装置 | |
CN109451089A (zh) | 一种访问方法、装置、计算机设备及计算机存储介质 | |
CN109726340A (zh) | 统一资源定位符分类的查询方法及装置 | |
CN110245129A (zh) | 一种分布式全局数据去重方法和装置 | |
CN104933054A (zh) | 缓存资源文件的url存储方法及装置、缓存服务器 | |
CN110661892B (zh) | 一种域名配置信息处理方法及装置 | |
CN105939402A (zh) | Mac表项的获取方法及装置 | |
CN101483668A (zh) | 热点数据的网络存储和访问方法、设备及系统 | |
WO2016091027A1 (zh) | 一种网络地址转换与访问控制列表规则聚合方法和装置 | |
JP2009237979A (ja) | 情報処理装置及び方法、並びにプログラム | |
CN111045988A (zh) | 文件查找方法、设备和计算机程序产品 | |
US20210097049A1 (en) | Method, device and computer program product for managing index tables | |
CN113992364A (zh) | 一种网络数据包阻断优化方法以及系统 | |
US7058773B1 (en) | System and method for managing data in a distributed system | |
CN110311868B (zh) | 业务处理方法、装置、成员设备及机器可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |