本发明涉及互联网领域,特别是涉及一种高效域名检测的方法及系统。
背景技术:
随着互联网的高速发展,域名检测显得越来越普遍和重要,然而域名检测延伸出很多网络安全问题、检测效率低下问题以及数据不准确问题。
传统的域名检测,是直接进行whois检测,然后直接返回检测结果,这种检测方法,不但准确度不高,容易记录错误,还比较耗时,检测速率低下。
技术实现要素:
本发明的目的是提供一种高效域名检测的方法及系统,能够缩短检测时间,提高数据的准确性。
为实现上述目的,本发明提供了如下方案:
一种高效域名检测的方法,包括:
获取备用数据库;
在所述备用数据库中输入需要查找的域名id;
根据域名id自动匹配后缀;
将所述域名id和所述后缀结合,得到组合的域名id,所述组合的域名id作为domainmap映射的id;
启动线程hand,根据所述domainmap映射的id遍历domainmap,得到遍历信息;
根据所述遍历信息判断所述domainmap映射的id是否有配对的域名数据,所述域名数据包括名称和注册信息,所述注册信息包括已注册信息、未注册信息、注册人信息和注册公司信息;
若是,则输出域名数据;
若否,则进行业务逻辑处理,对所述业务逻辑处理后的域名id进行检测,得到检测结果,所述检测结果为所述业务逻辑处理后的域名id对应的域名数据;
将所述检测结果放入domainmap映射进行保存。
可选的,所述根据域名id自动匹配后缀,具体包括:
根据域名id自动匹配后缀,所述后缀为.com或.cn或.net或.org。
可选的,所述进行业务逻辑处理,对所述业务逻辑处理后的域名id进行域名数据的检测,得到检测结果,具体包括:
判断所述组合的域名id是否符合域名规则;
若是,则对所述业务逻辑处理后的域名id进行whois检测,得到域名数据;
若否,则结束域名数据检测。
可选的,所述进行业务逻辑处理,对所述业务逻辑处理后的域名id进行域名数据的检测,得到检测结果,具体包括:
判断所述组合的域名id是否符合域名规则;
若是,则对所述业务逻辑处理后的域名id进行api接口检测,得到域名数据;
若否,则结束域名数据检测。
可选的,所述在将所述检测结果放入domainmap映射进行保存之后,还包括:
将所述域名数据存入所述备用数据库,得到扩大的数据库。
一种高效域名检测的系统,包括:
备用数据库获取模块,用于获取备用数据库;
域名id输入模块,用于在所述备用数据库中输入需要查找的域名id;
后缀匹配模块,用于根据域名id自动匹配后缀;
结合模块,用于将所述域名id和所述后缀结合,得到组合的域名id,所述组合的域名id作为domainmap映射的id;
遍历模块,用于启动线程hand,根据所述domainmap映射的id遍历domainmap,得到遍历信息;
判断模块,用于根据所述遍历信息判断所述domainmap映射的id是否有配对的域名数据,所述域名数据包括名称和注册信息,所述注册信息包括已注册信息、未注册信息、注册人信息和注册公司信息;
域名数据输出模块,用于若有配对的域名数据,则输出域名数据;
业务逻辑处理模块,用于若没有配对的域名数据,则进行业务逻辑处理,对所述业务逻辑处理后的域名id进行检测,得到检测结果,所述检测结果为所述业务逻辑处理后的域名id对应的域名数据;
保存模块,用于将所述检测结果放入domainmap映射进行保存。
可选的,所述后缀匹配模块具体包括:
后缀匹配单元,用于根据域名id自动匹配后缀,所述后缀为.com或.cn或.net或.org。
可选的,所述业务逻辑处理模块,具体包括:
第一判断单元,用于判断所述组合的域名id是否符合域名规则;
whois检测单元,若符合域名规则,则对所述业务逻辑处理后的域名id进行whois检测,得到域名数据;
若不符合域名规则,则结束域名数据检测。
可选的,所述业务逻辑处理模块,具体包括:
第二判断单元,用于判断所述组合的域名id是否符合域名规则;
api接口检测单元,用于若符合域名规则,则对所述业务逻辑处理后的域名id进行api接口检测,得到域名数据;
若否,则结束域名数据检测。
可选的,所述系统还包括:
数据库扩大模块,用于将所述域名数据存入所述备用数据库,得到扩大的数据库。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明提供一种高效域名检测的方法,包括:获取备用数据库;在所述备用数据库中输入需要查找的域名id;根据域名id自动匹配后缀;将所述域名id和所述后缀结合,得到组合的域名id,所述组合的域名id作为domainmap映射的id;启动线程hand,根据所述domainmap映射的id遍历domainmap,得到遍历信息;根据所述遍历信息判断所述domainmap映射的id是否有配对的域名数据;若是,则输出域名数据;若否,则进行业务逻辑处理,对所述业务逻辑处理后的域名id进行检测,得到检测结果,所述检测结果为所述业务逻辑处理后的域名id对应的域名数据;将所述检测结果放入domainmap映射进行保存。本发明能够缩短检测时间,提高数据的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明高效域名检测的方法流程图;
图2为本发明高效域名检测的系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种高效域名检测的方法及系统,能够缩短检测时间,提高数据的准确性。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明高效域名检测的方法流程图。如图1所示,一种高效域名检测的方法,包括:
步骤101:获取备用数据库;搜集最新常用词库数量在5万条以上,导入到具体数据库中,得到备用数据库;
步骤102:在所述备用数据库中输入需要查找的域名id;
步骤103:根据域名id自动匹配后缀;
步骤104:将所述域名id和所述后缀结合,得到组合的域名id,所述组合的域名id作为domainmap映射的id;
步骤105:启动线程hand,根据所述domainmap映射的id遍历domainmap,得到遍历信息;
步骤106:根据所述遍历信息判断所述domainmap映射的id是否有配对的域名数据,所述域名数据包括名称和注册信息,所述注册信息包括已注册信息、未注册信息、注册人信息和注册公司信息;
步骤107:若是,则输出域名数据;如果在备用数据库,可以检测到域名数据,则直接返回检测结果,本次域名检测结束。由于本次检测只是在系统现有数据库执行,则时间短,检测效率高。
步骤108:若否,则进行业务逻辑处理,对所述业务逻辑处理后的域名id进行检测,得到检测结果,所述检测结果为所述业务逻辑处理后的域名id对应的域名数据;如果检测备用数据库,未得到域名数据结果,则进行业务逻辑处理,具体的业务逻辑处理包括对定时器quartzauto进行匹配,由于定时器quartzauto一定时间自动进行,此过程线程hand和线程auto分开,同时进行检测api和whois,检测速率快,效率高。
步骤109:将所述检测结果放入domainmap映射进行保存。
步骤103,具体包括:
根据域名id自动匹配后缀,所述后缀为.com或.cn或.net或.org。
步骤108,具体包括:
判断所述组合的域名id是否符合域名规则;
若是,则对所述业务逻辑处理后的域名id进行whois检测或api接口检测,得到域名数据;
若否,则结束域名数据检测。
所述方法,还包括:
将所述域名数据存入所述备用数据库,得到扩大的数据库。从api或whois检测的结果,又会保存到系统数据中,这样增加数据库的数据量信息,又可以增加数据库资源,为以后提供了高效处理检测。
其中,本发明中涉及到的名词进行解释:
定时器quartzauto:一段时间自动遍历api和whois一遍的定时器。
线程hand:收到具体命令时,才会执行。
线程auto:此线程一直调用定时器quatzauto执行检测。
domainmap映射:一种数据库,可以看成一种存放域名的容器。
api接口:一种政府提供的可以检测域名信息的接口。
whois检测:可以用来查看域名的当前信息状态,包括域名是否已注册、注册日期、过期日期、域名状态、dns解析服务器等。(可以看做一种可以检测域名的接口)。
本发明具有下列优势:
本发明的检测方法运用了系统本身的数据库和双线程原理,大大缩短了域名检测的时间、提高了效率。
本发明的检测方法运用了自身数据库、api接口和whois检测,将多种检测方式集中一起,提高了检测数据准确性。
图2为本发明高效域名检测的系统结构图。如图2所示,一种高效域名检测的系统,包括:
备用数据库获取模块201,用于获取备用数据库;
域名id输入模块202,用于在所述备用数据库中输入需要查找的域名id;
后缀匹配模块203,用于根据域名id自动匹配后缀;
结合模块204,用于将所述域名id和所述后缀结合,得到组合的域名id,所述组合的域名id作为domainmap映射的id;
遍历模块205,用于启动线程hand,根据所述domainmap映射的id遍历domainmap,得到遍历信息;
判断模块206,用于根据所述遍历信息判断所述domainmap映射的id是否有配对的域名数据,所述域名数据包括名称和注册信息,所述注册信息包括已注册信息、未注册信息、注册人信息和注册公司信息;
域名数据输出模块207,用于若有配对的域名数据,则输出域名数据;
业务逻辑处理模块208,用于若没有配对的域名数据,则进行业务逻辑处理,对所述业务逻辑处理后的域名id进行检测,得到检测结果,所述检测结果为所述业务逻辑处理后的域名id对应的域名数据;
保存模块209,用于将所述检测结果放入domainmap映射进行保存。
所述后缀匹配模块203具体包括:
后缀匹配单元,用于根据域名id自动匹配后缀,所述后缀为.com或.cn或.net或.org。
所述业务逻辑处理模块208,具体包括:
第一判断单元,用于判断所述组合的域名id是否符合域名规则;
whois检测单元,若符合域名规则,则对所述业务逻辑处理后的域名id进行whois检测,得到域名数据;
若不符合域名规则,则结束域名数据检测。
或具体包括:
第二判断单元,用于判断所述组合的域名id是否符合域名规则;
api接口检测单元,用于若符合域名规则,则对所述业务逻辑处理后的域名id进行api接口检测,得到域名数据;
若否,则结束域名数据检测。
所述系统还包括:
数据库扩大模块,用于将所述域名数据存入所述备用数据库,得到扩大的数据库。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。