一种包含顶层节点的Handle解析系统的制作方法

文档序号:11263665阅读:373来源:国知局
一种包含顶层节点的Handle解析系统的制造方法与工艺

本发明涉及互联网技术领域,特别涉及一种包含顶层节点的handle解析系统。



背景技术:

为保证在全球范围内的互联互通,handle解析系统设计有若干并联的顶级根节点,这些根节点在全球范围内实现跨国、跨区域的共享,是解析过程中的中心枢纽节点。如图1所示,图1是现有的handle解析系统的架构示意图;handle解析系统设计有若干并联的顶级根节点,这些根节点是解析过程中的中心枢纽节点。如果大量的解析都通过这些根节点,则这些有限的根节点将容易形成整个系统的瓶颈。比如,图1中现有的handle解析架构中,每次超过缓存时效的解析都需要经过这些中心枢纽节点即根节点的处理,因此,对于大并发、低时延的解析需求,这些有限的根节点将容易形成整个系统的瓶颈,不能提供可靠的解析服务。



技术实现要素:

本发明提供一种包含顶层节点的handle解析系统,用以提高handle系统的解析能力和handle系统的灵活性。

本发明提供一种包含顶层节点的handle解析系统,所述handle解析系统包括:根节点和与所述根节点相连接的多级子节点;

所述handle解析系统还包括:

顶层节点;所述顶层节点部署在所述根节点的直属下一级并与所述根节点相连接,所述顶层节点部分承担所述根节点的解析职责。

优选地,所述handle解析系统中部署多个所述顶层节点,且多个所述顶层节点并联连接。

优选地,所述多个顶层节点采用分布式方式进行部署。

优选地,所述handle解析系统接收到解析请求时,利用一个所述顶层节点对接收到的所述解析请求进行响应,执行对应的解析操作;

若一个所述顶层节点出现故障,则寻找另一个顶层节点执行解析操作;

若所述handle解析系统中包含的所有顶层节点均出现故障,则利用所述根节点执行对应的解析操作;

若接收到的所述解析请求内容不在顶层节点的涵盖范围内,则由所述顶层节点将解析请求转发给对应的根节点,由所述根节点对所述解析请求进行解析。

优选地,所述顶层节点包括如下功能模块:

解析请求处理模块,用于:

接收解析请求,并在解析安全控制模块以及存取控制模块的配合下,处理并返回解析请求对应的前缀的定义内容;

所述解析安全控制模块,用于:

对所述解析请求进行安全验证,保障所述解析请求的合法性,并滤除所述解析请求中无效的前缀响应;

所述存取控制模块,用于:

响应所述解析请求,调度本地缓存模块、本地存储模块以及解析转发控制模块,获取所述解析请求中对应的前缀的定义内容;

响应存取请求,控制本地缓存模块以及本地存储模块,从其它的顶层节点中获取前缀间的数据存取控制;

所述本地存储模块,用于:

在本地数据库中保存前缀的定义内容,并支持多种关系型与非关系型数据库,响应外部模块对前缀的定义内容的存取请求,并对数据进行存取控制;

所述本地缓存模块,用于:

缓存前缀的定义内容,并根据前缀对应的缓存时效信息和缓存策略信息,维护缓存内容的有效性;

所述解析转发控制模块,用于:

针对不在当前顶层节点管理范围内的解析请求,根据解析路径的控制定义,将所述解析请求转发到对应的在其管理范围内的其他顶层节点,由所述其他顶层节点进行解析,接收所述其他顶层节点对所述解析请求进行解析得到的解析结果,并将得到的所述解析结果返回至所述存取控制模块。

优选地,所述顶层节点对接收到的解析请求进行响应,执行对应的解析操作包括:

所述解析请求处理模块收解析请求,调用所述解析安全控制模块验证所述解析请求的有效性;

若所述解析安全控制模块验证所述解析请求有效,则所述解析请求处理模块将所述解析请求转换为存取请求,并调用所述存取控制模块;

所述存取控制模块接收调用指令,依次处理所述解析请求,并将解析得到的解析结果返回至所述解析请求处理模块;

所述解析请求处理模块接收所述解析结果,调用所述解析安全控制模块,由所述解析安全控制模块验证所述解析结果对应的解析内容是否可返回至发送所述解析请求的解析请求方;

若所述解析安全控制模块验证所述解析结果对应的解析内容能够发送至所述解析请求方,则所述解析请求处理模块将所述解析内容返回至所述解析请求方。

优选地,所述存取控制模块接收调用指令,依次处理所述解析请求,并将解析得到的解析结果返回至所述解析请求处理模块,包括:

所述存取控制模块接收调用指令,根据所述解析请求,查找本地缓存中是否存在所述解析请求对应的解析内容;

若所述本地缓存中存在所述解析内容,则所述存取控制模块将所述解析内容作为解析结果,返回至所述解析请求处理模块;

若所述本地缓存中不存在所述解析内容,则:

所述存取控制模块调用本地存储,查询本地存储中是否存在所述解析请求对应的解析内容;若所述本地存储中存在所述解析内容,则将所述解析内容写入本地缓存,并将所述解析内容返回至所述解析请求处理模块;

若所述本地存储中不存在所述解析内容,则所述存取控制模块调用所述解析转发控制模块,由所述解析转发控制模块对所述解析请求进行外部解析,并从外部解析获取对应的解析内容后,将获取的所述解析内容写入本地缓存,并将所述解析内容返回至所述解析请求处理模块。

优选地,所述若一个所述顶层节点出现故障,则寻找另一个顶层节点执行解析操作,包括:

所述寻找方法为,根据每个顶层节点被选择的概率选择一个顶层节点执行解析操作,所述每个顶层节点被选择的概率由第一公式得到,所述第一公式为:

其中,q(i)为第i个顶层节点被选择的概率,q1、q2为小于1的非负实数且q1、q2之和小于1,ti为第i个顶层节点到故障顶层节点的通讯时间,ri为第i个顶层节点的可靠性,由运行的历史数据不断修正得到,其默认值为1,pi为第i个顶层节点的性能指数,m、n为正实数,i、j为故障顶层节点之外的所有顶层节点,第i个顶层节点是该j个顶层节点中的顶层节点。

本发明包含顶层节点的handle解析系统可以达到如下有益效果:

本发明包含顶层节点的handle解析系统包括:根节点和与所述根节点相连接的多级子节点;所述handle解析系统还包括:顶层节点;所述顶层节点部署在所述根节点的直属下一级并与所述根节点相连接,所述顶层节点部分承担所述根节点的解析职责。所述handle解析系统在保证不改变现有根节点的前提下,增加了可部分承担根节点解析功能的顶层节点;进一步地,该handle解析系统可以根据具体需求自主扩展对应的顶层节点,形成分布式部署的多个并联顶层节点,即独立于原有的根节点,又增加了handle解析系统的解析能力,使得整个系统架构更加灵活,同时也增强了系统的稳定性以及可靠性。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所指出的内容来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为现有的handle解析系统的架构示意图;

图2为本发明一种包含顶层节点的handle解析系统的一种实施方式的架构示意图;

图3为本发明一种包含顶层节点的handle解析系统的一种实施方式的功能模块示意图;

图4为本发明一种包含顶层节点的handle解析系统执行解析操作的一种实施方式的执行流程示意图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

本发明提供一种包含顶层节点的handle解析系统,用以提高handle系统的解析能力和handle系统的灵活性。请参照图2,图2为本发明一种包含顶层节点的handle解析系统的一种实施方式的架构示意图;如图2所示,本发明所描述的handle解析系统,不仅包含了传统handle解析系统中的根节点和与根节点相连接的多级子节点,还包含了独特的顶层节点;设置的所述顶层节点部署在所述根节点的直属下一级并与所述根节点相连接,所述顶层节点部分承担了所述根节点的解析职责。

本发明实施例中,所述顶层节点可以按照handle解析系统的需求,与所述根节点保持同步;在本发明一优选的实施例中,可以同时设计部署多个顶层节点,且上述多个顶层节点并联连接;如此一来,部署的上述多个并联的顶层节点可以部分承担根节点的解析职责,分担根节点的解析压力,从而满足handle解析系统不断增大的解析需求;部署上述顶层节点时,无需对handle解析系统中的根节点进行调整,使得handle解析系统的管理架构也更加灵活。

在本发明一优选的实施例中,handle解析系统部署的多个顶层节点采用分布式方式进行部署,使得各个顶层节点互不影响。

在本发明一优选的实施例中,增加顶层节点后,由于handle解析系统原有的解析入口均为根节点,而增加顶层节点后的handle解析系统的解析入口则是顶层节点中的一个,如果一个顶层节点出现故障,则handle解析系统可以寻找另外一个顶层节点来执行对应的解析操作;若该handle解析系统中的所有顶层节点均出现故障,则可以利用handle解析系统中的根节点按照现有的解析方式执行对应的解析操作,handle解析系统的稳定性大大提高。另外,若handle解析系统中的顶层节点接收到的解析请求内容不在该顶层节点的涵盖范围内,则由接收到解析请求的顶层节点将该解析请求转发给对应的根节点,由所述根节点对该解析请求进行解析。

基于图2所述实施例的描述,针对本发明handle解析系统,在一具体的应用场景中,若不采用本发明图2所示的handle解析系统,则当客户端尝试解析handle"86.1000.10.11/1234567890",它必须先从根节点找到86.1000对应的handle解析服务,再在86.1000处解析到86.1000.10的对应解析服务,再到86.1000.10处解析到86.1000.10.11的handle解析服务,最后到86.1000.10.11处获得86.1000.10.11/1234567890的内容。而采用了本发明图2所描述的handle解析系统,则当客户端尝试解析handle"86.1000.10.11/1234567890",可以直接通过顶层节点找到86.1000对应的handle解析服务,再逐级解析,直至获取到86.1000.10.11/1234567890的内容;本发明handle解析系统通过顶层节点承担根节点的部分解析压力,提高了handle系统的解析能力。

在本发明一优选的实施例中,handle解析系统中部署的顶层节点按照功能划分,包括但不限于图3所示的功能模块。请参照图3,图3为本发明一种包含顶层节点的handle解析系统的一种实施方式的功能模块示意图;如图3所示,本发明handle解析系统中部署的顶层节点包括但不限于如下功能模块:

解析请求处理模块01,用于:

接收解析请求,并在解析安全控制模块02以及存取控制模块03的配合下,处理并返回解析请求对应的前缀的定义内容;

所述解析安全控制模块02,用于:

对所述解析请求进行安全验证,保障所述解析请求的合法性,并滤除所述解析请求中无效的前缀响应;

所述存取控制模块03,用于:

响应所述解析请求,调度本地缓存模块04、本地存储模块05以及解析转发控制模块06,获取所述解析请求中对应的前缀的定义内容;

响应存取请求,控制本地缓存模块04以及本地存储模块05,从其它的顶层节点中获取前缀间的数据存取控制;

所述本地存储模块05,用于:

在本地数据库中保存前缀的定义内容,并支持多种关系型与非关系型数据库,响应外部模块对前缀的定义内容的存取请求,并对数据进行存取控制;

所述本地缓存模块04,用于:

缓存前缀的定义内容,并根据前缀对应的缓存时效信息和缓存策略信息,维护缓存内容的有效性;

所述解析转发控制模块06,用于:

针对不在当前顶层节点管理范围内的解析请求,根据解析路径的控制定义,将所述解析请求转发到对应的在其管理范围内的其他顶层节点,由所述其他顶层节点进行解析,接收所述其他顶层节点对所述解析请求进行解析得到的解析结果,并将得到的所述解析结果返回至所述存取控制模块。

基于图2和图3所述实施例的描述,请参照图4,图4为本发明一种包含顶层节点的handle解析系统执行解析操作的一种实施方式的执行流程示意图;如图4所示,本发明包含顶层节点的handle解析系统中,所述顶层节点利用图3所述的功能模块执行对应的解析操作,可以实施为如下描述的步骤s10-s50:

步骤s10、所述解析请求处理模块收解析请求,调用所述解析安全控制模块验证所述解析请求的有效性;

步骤s20、若所述解析安全控制模块验证所述解析请求有效,则所述解析请求处理模块将所述解析请求转换为存取请求,并调用所述存取控制模块;

本发明实施例中,顶层节点中的解析请求处理模块接收到解析请求后,调用解析安全控制模块,对接收到的解析请求进行有效性的验证;比如,解析安全控制模块验证上述解析请求是否安全、上述解析请求是否合法等,对于不合法、不安全的解析请求,所述解析安全控制模块直接将其滤除。对于合法有效的解析请求,所述解析请求处理模块将该解析请求转化为存取请求,并调用存取控制模块执行下一步的操作。

例如,解析请求处理模块接收到来自客户端a发送的针对某商品的handle字符串发起的溯源解析请求,解析请求处理模块调用解析安全控制模块,由所述解析安全控制模块来验证该解析请求中携带的客户端a对应的权限信息;若所述解析安全控制模块识别出该客户端a不具备针对上述商品的溯源权限,则安全控制模块直接将客户端a发送的上述溯源解析请求滤除。若该解析安全控制模块识别出该客户端a具备针对上述商品的溯源权限,则将该客户端a发送的解析请求的合法性反馈至所述解析请求处理模块;所述解析请求处理模块接收到所述解析安全控制模块针对上述解析请求的合法性验证结果,则调用存取控制模块,由所述存取控制模块执行下一步操作。

步骤s30、所述存取控制模块接收调用指令,依次处理所述解析请求,并将解析得到的解析结果返回至所述解析请求处理模块;

步骤s40、所述解析请求处理模块接收所述解析结果,调用所述解析安全控制模块,由所述解析安全控制模块验证所述解析结果对应的解析内容是否可返回至发送所述解析请求的解析请求方;

步骤s50、若所述解析安全控制模块验证所述解析结果对应的解析内容能够发送至所述解析请求方,则所述解析请求处理模块将所述解析内容返回至所述解析请求方。

所述存取控制模块接收到所述解析请求处理模块发送的调用指令,根据接收的所述调用指令的先后顺序以及所述调用指令对应的处理优先级,依次处理所述解析请求处理模块发送的解析请求,并将解析得到的解析结果返回至所述解析请求处理模块。

当解析请求处理模块接收到存取控制模块针对解析请求返回的解析结果时,将对应的解析结果发送至所述解析安全控制模块,由所述解析安全控制模块来验证该解析结果对应的解析内容是否可返回至该解析请求对应的解析请求方。

本发明实施例中,由于handle解析系统的安全可靠性要求较高,因此,handle解析系统针对接收到的解析请求,以及针对上述解析请求解析得到的对应的解析内容,均由所述解析安全控制模块进行安全性验证;当上述解析内容满足预设安全性规则时,例如该解析内容不涉密、不违法且符合解析请求方对应的知情权限范围时,所述解析安全控制模块将验证的可靠性结果发送至所述解析请求处理模块,由所述解析请求处理模块将对应的解析结果返回至解析请求方。若上述解析内容不满足所述预设安全性规则中的任一条规则时,所述解析请求处理模块均不会将对应的解析结果返回至解析请求方。

在本发明一优选的实施例中,若所述解析安全控制模块验证对应的解析内容不可返回至解析请求方,并将上述验证结果发送至所述解析请求处理模块时,所述解析请求处理模块返回解析内容不合法所对应的提示信息至解析请求方。例如,所述解析请求处理模块根据上述解析内容不可返回解析请求方的具体原因,来拟定对应的提示信息,并将拟定的提示信息返回至解析请求方,从而提示解析请求方,该解析请求对应的解析内容不可返回的原因。

在本发明一优选的实施例中,上述图4所述实施例中的“步骤s30、所述存取控制模块接收调用指令,依次处理所述解析请求,并将解析得到的解析结果返回至所述解析请求处理模块”,可以执行为如下操作:

所述存取控制模块接收调用指令,根据所述解析请求,查找本地缓存中是否存在所述解析请求对应的解析内容;若所述本地缓存中存在所述解析内容,则所述存取控制模块将所述解析内容作为解析结果,返回至所述解析请求处理模块。若所述本地缓存中不存在所述解析内容,则所述存取控制模块调用本地存储,查询本地存储中是否存在所述解析请求对应的解析内容;若所述本地存储中存在所述解析内容,则将所述解析内容写入本地缓存,并将所述解析内容返回至所述解析请求处理模块;若所述本地存储中也不存在所述解析内容,则所述存取控制模块调用所述解析转发控制模块,由所述解析转发控制模块对所述解析请求进行外部解析,并从外部解析获取对应的解析内容后,将获取的所述解析内容写入本地缓存,并将所述解析内容返回至所述解析请求处理模块。

在本发明一优选的实施例中,若一个所述顶层节点出现故障,则寻找另一个顶层节点执行解析操作,包括:

所述寻找方法为,根据每个顶层节点被选择的概率选择一个顶层节点执行解析操作,所述每个顶层节点被选择的概率由第一公式得到,所述第一公式为:

其中,q(i)为第i个顶层节点被选择的概率,q1、q2为小于1的非负实数且q1、q2之和小于1,ti为第i个顶层节点到故障顶层节点的通讯时间,ri为第i个顶层节点的可靠性,由运行的历史数据不断修正得到,其默认值为1,pi为第i个顶层节点的性能指数,m、n为正实数,i、j为故障顶层节点之外的所有顶层节点,第i个顶层节点是该j个顶层节点中的顶层节点。

具体寻找时,可以选择q(i)值最大的那个顶层节点来执行解析操作。

通过本发明给出的系统,能够在某一顶层节点出现故障时,将解析操作的任务分配给其他顶层节点,且在分配的时候能够充分考虑通讯时间、顶层节点的性能和可靠性,使在分配时能够让其他顶层节点的负载保持均衡。

本发明包含顶层节点的handle解析系统包括根节点和与所述根节点相连接的多级子节点;所述handle解析系统还包括:顶层节点;所述顶层节点部署在所述根节点的直属下一级并与所述根节点相连接,所述顶层节点部分承担所述根节点的解析职责;所述handle解析系统在保证不改变现有根节点的前提下,增加了可部分承担根节点解析功能的顶层节点;进一步地,该handle解析系统可以根据具体需求自主扩展对应的顶层节点,形成分布式部署的多个并联顶层节点,即独立于原有的根节点,又增加了handle解析系统的解析能力,使得整个系统架构更加灵活,同时也增强了系统的稳定性以及可靠性。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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