首页> 中国专利> 一种复杂配置依赖关系自动检查处理方法

一种复杂配置依赖关系自动检查处理方法

摘要

一种复杂配置依赖关系自动检查处理方法,包括依次进行的以下步骤:创建依赖关系图;在有新配置下发时,将新配置加入到依赖关系图中;检查新配置的所有依赖是否全都满足,当新配置的所有依赖的配置A未全都满足时,将新配置置为待定状态,并根据依赖关系图提示缺失的依赖的配置A;当新配置的所有依赖的配置A全都满足时,将新配置下发;本发明通过建立依赖关系图,并将未满足全部依赖的配置置为待定状态,并且在新配置下发时,检测依赖新配置的配置A的所有依赖的配置项是否都已经被满足,并进行相应操作,解决了目前下发配置时配置的依赖配置项未全部满足时就下发失败,需要逐个排查的问题。

著录项

  • 公开/公告号CN113076129A

    专利类型发明专利

  • 公开/公告日2021-07-06

    原文格式PDF

  • 申请/专利权人 成都安恒信息技术有限公司;

    申请/专利号CN202110306547.4

  • 申请日2021-03-23

  • 分类号G06F8/71(20180101);

  • 代理机构51228 成都君合集专利代理事务所(普通合伙);

  • 代理人尹新路

  • 地址 610000 四川省成都市自由贸易试验区成都高新区天府大道北段1480号高新孵化园6号楼110室

  • 入库时间 2023-06-19 11:44:10

说明书

技术领域

本发明涉及计算机软件配置领域,特别涉及一种复杂配置依赖关系自动检查处理方法。

背景技术

随着计算机应用的发展,各种应用的功能日益丰富,丰富的功能也带来了配置项的多样性和复杂性的日渐增加;究其原因,本质是配置间的各种依赖关系越来越复杂,多对多的依赖、多层级依赖、甚至是多层级间的多对多依赖关系;

在计算机软件系统中,随着配置项的多样性和复杂性的增加,配置依赖关系越来越复杂,并且当配置中涉及的任意一个依赖不满足时,配置就会下发失败,需要逐步排查缺少了什么,当遇到多对多甚至是多个层级之间的依赖排查时,目前的这种处理根本无法接受;排查完毕后还要重新下发之前由于依赖缺失而下发失败的复杂配置;现在亟需解决这种复杂配置依赖关系而带来的问题;使得我们能够将更多的精力放在业务上,而不是配置依赖关系的排查和配置的下发的处理上。

针对这种复杂配置依赖关系的现状,目前还没有相关的处理方案,传统的处理思路是:在这种复杂的配置依赖关系下,做任何配置前,都要保证其所有依赖的基础配置都已经满足,否则,如果配置依赖项中任意一项不满足,那么此配置会下发失败,很多应用设计中,也根本不会告诉缺少什么依赖;然而我们在配置之前并不知道这项配置的所有依赖项,对依赖关系没有一个清晰的认识,不满足直接失败,等逐个排查并满足所有依赖后,再次手动重新下发之前失败的配置,但是当此配置的配置项很多时,再来一遍也是相当地耗时耗力。

发明内容

本发明的目的在于:提供了一种复杂配置依赖关系自动检查处理方法,建立依赖关系图,并将未满足全部依赖的配置置为待定状态,而不是现有技术中的配置下发失败,并提示缺失的依赖的配置项,并且在新配置下发时,检测依赖新配置的配置A的所有依赖的配置项是否都已经被满足,并进行相应操作,解决了目前下发配置时配置的依赖配置项未全部满足时就下发失败,需要逐个排查的问题。

本发明采用的技术方案如下:

一种复杂配置依赖关系自动检查处理方法,包括依次进行的以下步骤:

步骤S1:创建依赖关系图;

步骤S2:在有新配置下发时,将新配置加入到依赖关系图中;

步骤S3:检查新配置的所有依赖是否全都满足,当新配置的所有依赖的配置A未全都满足时,将新配置置为待定状态,并根据依赖关系图提示缺失的依赖的配置A;当新配置的所有依赖的配置A全都满足时,将新配置下发。

为了更好地实现本方案,进一步地,所述方法还包括步骤S4:在新配置下发后,检查依赖关系图中,由于依赖新配置而处于待定状态的配置G的所有依赖的配置项是否都已满足,若配置G的所有依赖的配置项都已经被满足,则将配置G下发,若配置G的所有依赖的配置项未都满足,则将配置G继续保持待定状态。

为了更好地实现本方案,进一步地,所述依赖新配置而处于待定状态的配置G是依赖关系图中新配置的相邻配置节点。

为了更好地实现本方案,进一步地,所述步骤S3中所述的待定状态为:将新配置依赖的所有配置A中未满足的配置A1不下发,将不受配置A1影响的配置A进行下发,新配置处于等待剩余的配置A下发的状态。

为了更好地实现本方案,进一步地,系统初始化时,根据每个配置的大类给每个配置都分配一个唯一的类别ID,而每个配置在所属的类别ID下也有一个唯一的name,每一个配置的唯一标识是类别ID和name的组合,所述步骤S1中依赖关系图的创建是在系统初始化时,根据每个配置的唯一标识和配置间的依赖关系,创建依赖关系图并记录到系统内。

为了更好地实现本方案,进一步地,所述步骤S2中将新配置加入到依赖关系图中的步骤具体为:

有新配置下发时,检测新配置的唯一标识是否在依赖关系图中,若新配置的唯一标识在依赖关系图中,则根据新配置的唯一标识,则将新配置下发;当新配置的唯一标识未在依赖关系图中时,根据新配置的依赖关系,将新配置补充到依赖关系图中,并将新配置进行下发。

为了更好地实现本方案,进一步地,步骤S2中有新配置下发时,若检测到新配置具有唯一标识后,再检测新配置的唯一标识对应的配置是否已下发,若已下发,则不进行操作;若新配置的唯一标识对应的配置未下发,则将新配置进行下发。

由于计算机软件系统中配置之间互相有着复杂且不同的依赖关系,而一项配置X的下发,是需要满足该配置的所有依赖的配置A都满足,但是该配置X依赖的配置A,又依赖于其他配置B,因此当一项配置X所依赖的配置A未都满足而无法下发时,可能会有很多种存在的可能性,而现有技术中,直接进行配置X下发的过程,当该配置X的所有依赖的配置A并未全都满足时,该配置X会直接下发失败,需要排查改配置X依赖的配置A中,哪个配置A未满足,而这个配置A未满足,又是因为这个配置A依赖的哪个配置B未满足,也需要排查,等这些一级二级的依赖的配置项都排查并且都解决都下发后,最终才将该配置X下发,这个排查过程很繁琐,费时费力,并且排查完后需要再将这些配置A、配置B等依次下发,最终才能将需要的配置X下发,这个过程也十分浪费时间。

本方案创建配置之间的依赖关系图,在进行配置下发时,将需要下发的新配置在依赖关系图中进行依赖关系的寻找,当新配置的所有依赖的配置项全都满足时,进行新配置的下发,而若新配置的所有依赖并未全部满足时,将新配置置为待定状态,这里所述的待定状态,可以设置为将新配置依赖的所有配置A中未满足的配置A1不下发,不受配置A1影响的配置A进行下发,此时新配置所依赖的配置A下发了一部分,而新配置处于等待剩余的配置A下发的状态,在剩余的配置A下发后,新配置进行下发,本方案的这样设置,不会有在配置A未全下发时,新配置进行下发导致下发失败,需要重新进行下发导致的时间浪费。

综上所述,由于采用了上述技术方案,本发明的有益效果是:

1.本发明所述的一种复杂配置依赖关系自动检查处理方法,建立依赖关系图,并将未满足全部依赖的配置置为待定状态,并且在新配置下发时,检测依赖新配置的配置A的所有依赖的配置项是否都已经被满足,并进行相应操作,解决了目前下发配置时配置的依赖配置项未全部满足时就下发失败,需要逐个排查的问题;

2.本发明所述的一种复杂配置依赖关系自动检查处理方法,建立依赖关系图,并将未满足全部依赖的配置置为待定状态,并且在新配置下发时,检测依赖新配置的配置A的所有依赖的配置项是否都已经被满足,并进行相应操作,相比较现有技术中配置下发失败后需要重新下发导致的时间浪费。

附图说明

为了更清楚地说明本技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图,其中:

图1是本发明的实施例1的原理框图;

图2是本发明的实施例2的原理框图。

具体实施方式

为了更清楚地说明本发明实施例的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,应当理解,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,因此不应被看作是对保护范围的限定。基于本发明中的实施例,本领域普通技术工作人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“设置”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;也可以是直接相连,也可以是通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

下面结合图1至图2对本发明作详细说明。

实施例1:

一种复杂配置依赖关系自动检查处理方法,如图1,包括依次进行的以下步骤:

步骤S1:创建依赖关系图;

步骤S2:在有新配置下发时,将新配置加入到依赖关系图中;

步骤S3:检查新配置的所有依赖是否全都满足,当新配置的所有依赖的配置A未全都满足时,将新配置置为待定状态,并根据依赖关系图提示缺失的依赖的配置A;当新配置的所有依赖的配置A全都满足时,将新配置下发。

工作原理:由于计算机软件系统中配置之间互相有着复杂且不同的依赖关系,而一项配置X的下发,是需要满足该配置的所有依赖的配置A都满足,但是该配置X依赖的配置A,又依赖于其他配置B,因此当一项配置X所依赖的配置A未都满足而无法下发时,可能会有很多种存在的可能性,而现有技术中,直接进行配置X下发的过程,当该配置X的所有依赖的配置A并未全都满足时,该配置X会直接下发失败,需要排查改配置X依赖的配置A中,哪个配置A未满足,而这个配置A未满足,又是因为这个配置A依赖的哪个配置B未满足,也需要排查,等这些一级二级的依赖的配置项都排查并且都解决都下发后,最终才将该配置X下发,这个排查过程很繁琐,费时费力,并且排查完后需要再将这些配置A、配置B等依次下发,最终才能将需要的配置X下发,这个过程也十分浪费时间。

本方案创建配置之间的依赖关系图,在进行配置下发时,将需要下发的新配置在依赖关系图中进行依赖关系的寻找,当新配置的所有依赖的配置项全都满足时,进行新配置的下发,而若新配置的所有依赖并未全部满足时,将新配置置为待定状态。

实施例2

系统初始化时,根据每个配置的大类给每个配置都分配一个唯一的类别ID,而每个配置在所属的类别ID下也有一个唯一的name,每一个配置的唯一标识是类别ID和name的组合,一种复杂配置依赖关系自动检查处理方法,如图2,包括依次进行的以下步骤:

步骤S1:在系统初始化时,根据每个配置的唯一标识和配置间的依赖关系,创建依赖关系图并记录到系统内。

步骤S2:在有新配置下发时,将新配置加入到依赖关系图中;具体为:

有新配置下发时,检测新配置的唯一标识是否在依赖关系图中,若新配置的唯一标识在依赖关系图中,则根据新配置的唯一标识,则将新配置下发;当新配置的唯一标识未在依赖关系图中时,根据新配置的依赖关系,将新配置补充到依赖关系图中,并将新配置进行下发。

有新配置下发时,若检测到新配置具有唯一标识后,再检测新配置的唯一标识对应的配置是否已下发,若已下发,则不进行操作;若新配置的唯一标识对应的配置未下发,则将新配置进行下发。

步骤S3:检查新配置的所有依赖是否全都满足,当新配置的所有依赖的配置A未全都满足时,将新配置置为待定状态,并根据依赖关系图提示缺失的依赖的配置A;当新配置的所有依赖的配置A全都满足时,将新配置下发。

所述的待定状态为:将新配置依赖的所有配置A中未满足的配置A1不下发,将不受配置A1影响的配置A进行下发,新配置处于等待剩余的配置A下发的状态。

步骤S4:在新配置下发后,检查依赖关系图中,由于依赖新配置而处于待定状态的配置G的所有依赖的配置项是否都已满足,若配置G的所有依赖的配置项都已经被满足,则将配置G下发,若配置G的所有依赖的配置项未都满足,则将配置G继续保持待定状态。依赖新配置而处于待定状态的配置G是依赖关系图中新配置的相邻配置节点。

工作原理:由于计算机软件系统中配置之间互相有着复杂且不同的依赖关系,而一项配置X的下发,是需要满足该配置的所有依赖的配置A都满足,但是该配置X依赖的配置A,又依赖于其他配置B,因此当一项配置X所依赖的配置A未都满足而无法下发时,可能会有很多种存在的可能性,而现有技术中,直接进行配置X下发的过程,当该配置X的所有依赖的配置A并未全都满足时,该配置X会直接下发失败,需要排查改配置X依赖的配置A中,哪个配置A未满足,而这个配置A未满足,又是因为这个配置A依赖的哪个配置B未满足,也需要排查,等这些一级二级的依赖的配置项都排查并且都解决都下发后,最终才将该配置X下发,这个排查过程很繁琐,费时费力,并且排查完后需要再将这些配置A、配置B等依次下发,最终才能将需要的配置X下发,这个过程也十分浪费时间。

本方案创建配置之间的依赖关系图,在进行配置下发时,将需要下发的新配置在依赖关系图中进行依赖关系的寻找,当新配置的所有依赖的配置项全都满足时,进行新配置的下发,而若新配置的所有依赖并未全部满足时,将新配置置为待定状态,这里所述的待定状态,可以设置为将新配置依赖的所有配置A中未满足的配置A1不下发,不受配置A1影响的配置A进行下发,此时新配置所依赖的配置A下发了一部分,而新配置处于等待剩余的配置A下发的状态,在剩余的配置A下发后,新配置进行下发,本方案的这样设置,不会有在配置A未全下发时,新配置进行下发导致下发失败,需要重新进行下发导致的时间浪费。

并且,本方案在新配置下发后,会检查依赖关系图中,由于依赖新配置而处于待定状态的配置G的所有依赖的配置项是否都已满足,因为可能依赖于新配置的配置G,可能仅缺新配置了,在新配置下发后,配置G所有依赖的配置可能也全都满足,使得配置G可以下发,故而我们进行检测,若配置G的所有依赖的配置项都已经被满足,则将配置G下发,若配置G的所有依赖的配置项未都满足,则将配置G继续保持待定状态。这里一般来说,依赖新配置而处于待定状态的配置G是依赖关系图中新配置的相邻配置节点,即我们仅检测依赖于新配置的配置G,在配置G下发后再检测依赖于配置G的配置H,在新配置下发后,不会检测由于依赖配置G而间接依赖于新配置的配置H。

另外,在本方案中,我们会在依赖关系图建立前就创建一个唯一标识,系统初始化的时候,我们明确知道我们的系统有哪些大类的配置(比如针对一个防火墙产品,有接口配置、路由配置等大类),这个ID是分配给配置类别的,而在后续的使用过程中,针对某一类别配置中新加的配置项,都有一个name(比如接口配置大类中,执行了一个给接口配置ip的配置项;或者路由配置大类中,执行了一个创建一条路由的配置项),那么此项配置的唯一标识就是“大类ID+类内配置项name”。在依赖关系图中,我们是使用唯一标识指代配置,将配置之间的依赖关系表示清楚,当有新配置下发时,检测新配置的唯一标识是否在依赖关系图中,若新配置的唯一标识在依赖关系图中,则根据新配置的唯一标识,将新配置加入到依赖关系图中的对应位置并准备进行下发;当新配置的唯一标识未在依赖关系图中时,根据新配置的依赖关系,将新配置补充到依赖关系图中,并准备将新配置进行下发。

以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号