CN111679893A - 运行系统构建方法、装置、电子设备及存储介质 - Google Patents

运行系统构建方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111679893A
CN111679893A CN202010329359.9A CN202010329359A CN111679893A CN 111679893 A CN111679893 A CN 111679893A CN 202010329359 A CN202010329359 A CN 202010329359A CN 111679893 A CN111679893 A CN 111679893A
Authority
CN
China
Prior art keywords
parameter
user
resource
parameters
target
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.)
Pending
Application number
CN202010329359.9A
Other languages
English (en)
Inventor
于亚军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202010329359.9A priority Critical patent/CN111679893A/zh
Priority to PCT/CN2020/099312 priority patent/WO2021212661A1/zh
Publication of CN111679893A publication Critical patent/CN111679893A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

一种运行系统构建方法,所述方法包括:通过关联查询,获取可用资源参数列表;接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数;使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法;若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板;根据所述资源模板,创建资源栈;根据所述资源栈,构建运行系统。本发明还提供一种运行系统构建装置、电子设备及存储介质。本发明能提高系统的构建效率。此外,本发明还涉及区块链技术,资源栈可存储于区块链节点中。

Description

运行系统构建方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种运行系统构建方法、装置、电子设备及存储介质。
背景技术
目前,随着计算机技术的发展,可以直接调用指定模板去创建一个系统所需要的资源,完成系统的构建。但在实践中发现,在调用模板时,需要用户输入资源参数,用户无法确定所输入的资源参数是否正确,若输入的资源参数不正确,会导致资源创建失败,用户可能需要调整多次其输入的资源参数,才能成功地创建资源并构建成系统,系统的构建效率不高。
因此,如何提高系统的构建效率是一个亟需解决的技术问题。
发明内容
鉴于以上内容,有必要提供一种运行系统构建方法、装置、电子设备及存储介质,能够提高系统的构建效率。
本发明的第一方面提供一种运行系统构建方法,所述方法包括:
通过关联查询,获取可用资源参数列表;
接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数;
使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法;
若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板;
根据所述资源模板,创建资源栈;
根据所述资源栈,构建运行系统。
在一种可能的实现方式中,所述使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果包括:
使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整;
若所述多个自定义参数完整,使用有效性校验算法,判断所述目标参数以及所述自定义参数是否有效;
若所述多个自定义参数有效,根据依赖关系校验算法,判断所述目标参数的依赖关系是否正确,以及判断所述自定义参数的依赖关系是否正确;
若所述目标参数的依赖关系正确,且所述自定义参数的依赖关系正确,生成表示所述自定义参数正确的校验结果。
在一种可能的实现方式中,所述使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整包括:
确定所述目标参数对应的第一资源定义块,以及确定所述自定义参数对应的第二资源定义块;
根据所述第一资源定义块,判断所述目标参数中是否存在第一缺失参数,以及根据所述第二资源定义块,判断所述自定义参数中是否存在第二缺失参数,其中,所述第一缺失参数在所述第一资源定义块中未存在对应的参数定义,所述第二缺失参数在所述第二资源定义块中未存在对应的参数定义;
若所述目标参数中存在第一缺失参数,或所述自定义参数中存在第二缺失参数,确定所述目标参数或所述自定义参数不完整;或
若所述目标参数中未存在第一缺失参数,且所述自定义参数中未存在第二缺失参数,确定所述目标参数以及所述自定义参数完整。
在一种可能的实现方式中,所述判断所述目标参数以及所述自定义参数是否有效包括:
获取所述目标参数对应的第一预设格式要求以及获取所述自定义参数对应的第二预设格式要求;
判断所述目标参数的格式是否符合所述第一预设格式要求,以及判断所述自定义参数的格式是否符合所述第二预设格式要求;
若所述目标参数的格式符合所述第一预设格式要求,且所述自定义参数的格式符合所述第二预设格式要求,确定所述目标参数以及所述自定义参数有效;
若所述目标参数的格式未符合所述第一预设格式要求,或所述自定义参数的格式未符合所述第二预设格式要求,确定所述目标参数或所述自定义参数有效。
在一种可能的实现方式中,所述根据所述资源模板,创建资源栈包括:
创建空栈;
从所述资源模板所指示的所有资源参数中确定存在依赖关系的依赖资源参数以及确定不存在依赖关系的非依赖资源参数;
在所述空栈中,根据所述非依赖资源参数,通过多线程并行创建非依赖资源,以及根据所述依赖资源参数,串行创建依赖资源,获得资源栈,其中,所述资源栈包括多个资源,所述资源栈存储在区块链中。
在一种可能的实现方式中,所述方法还包括:
若所述资源栈创建失败,获取当前上下文环境;
将所述当前上下文环境序列化,获得序列化数据;
将所述序列化数据存储至数据库中。
在一种可能的实现方式中,所述将所述序列化数据存储至数据库中之后,所述方法还包括:
接收用户输入的断点续作指令,从所述数据库中获取所述序列化数据;
将所述序列化数据进行反序列化,获得所述当前上下文环境;
根据所述当前上下文环境,继续创建所述资源栈。
本发明的第二方面提供一种运行系统构建装置,所述装置包括:
获取模块,用于通过关联查询,获取可用资源参数列表;
接收模块,用于接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数;
校验模块,用于使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法;
生成模块,用于若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板;
创建模块,用于根据所述资源模板,创建资源栈;
构建模块,用于根据所述资源栈,构建运行系统。
本发明的第三方面提供一种电子设备,所述电子设备包括处理器和存储器,所述处理器用于执行所述存储器中存储的计算机程序时实现所述的运行系统构建方法。
本发明的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的运行系统构建方法。
由以上技术方案,本发明中,可以通过关联查询,获取到最新的可以使用的资源参数列表给用户选择,可以减少用户输入无效的资源参数,同时,在创建一组资源(资源栈)前,对资源参数进行校验,以将出错的原因反馈给用户,避免用户再次输入无效的资源参数,提高资源创建的成功率,从而提高了系统的构建效率。
附图说明
图1是本发明公开的一种运行系统构建方法的较佳实施例的流程图。
图2是本发明公开的一种运行系统构建装置的较佳实施例的功能模块图。
图3是本发明实现运行系统构建方法的较佳实施例的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
本发明实施例的运行系统构建方法应用在电子设备中,也可以应用在电子设备和通过网络与所述电子设备进行连接的服务器所构成的硬件环境中,由服务器和电子设备共同执行。网络包括但不限于:广域网、城域网或局域网。
其中,服务器可以是指能对网络中其它设备(如电子设备)提供服务的计算机系统。如果一个个人电脑能够对外提供文件传输协议(File Transfer Protocol,简称FTP)服务,也可以叫服务器。从狭义范围上讲,服务器专指某些高性能计算机,能通过网络,对外提供服务,其相对于普通的个人电脑来说,稳定性、安全性、性能等方面都要求更高,因此在CPU、芯片组、内存、磁盘系统、网络等硬件和普通的个人电脑有所不同。
所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。所述电子设备还可包括网络设备和/或用户设备。其中,所述网络设备包括但不限于单个网络设备、多个网络设备组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络设备构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。所述用户设备包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理PDA等。
请参见图1,图1是本发明公开的一种运行系统构建方法的较佳实施例的流程图。其中,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。所述运行系统构建方法的执行主体可以为电子设备。
S11、通过关联查询,获取可用资源参数列表。
其中,所述关联查询可以是对所有资源进行查询,获取可用的资源,并查询出与这些可用资源关联的各项参数。
其中,可用资源参数列表为当前空闲的资源的资源参数。
S12、接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数。
本发明实施例中,可以输出(显示)所述可用资源参数列表中的所有参数,用户可以根据所述可用资源参数列表中的所有参数来进行选择、输入自己想要的参数。
S13、使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法。
其中,所述校验结果用来表示所述目标参数以及所述自定义参数是否正确以及出错的原因。
本发明实施例中,可以对所述目标参数以及所述自定义参数的类型、取值范围、长度等方面进行校验。比如子网掩码长度范围限制为22至26,可以通过设置子网掩码最长属性值(MaxValue)以及设置子网掩码最短属性值(MinValue),可以直接调用来判断子网掩码参数的长度是否符合规范。生成校验结果。
具体的,所述使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果包括:
使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整;
若所述多个自定义参数完整,使用有效性校验算法,判断所述目标参数以及所述自定义参数是否有效;
若所述多个自定义参数有效,根据依赖关系校验算法,判断所述目标参数的依赖关系是否正确,以及判断所述自定义参数的依赖关系是否正确;
若所述目标参数的依赖关系正确,且所述自定义参数的依赖关系正确,生成表示所述自定义参数正确的校验结果。
在该可选的实施方式中,一种资源可以有多个参数,需要确保各种资源的参数符合规范且完整。不同资源之间可能存在依赖关系,需要确定用户输入的依赖关系是否正确,可以确认依赖关系的资源是否存在,若存在,确定依赖关系正确,若找不到依赖关系的资源,确定依赖关系不正确。比如网络资源(Network)依赖网段资源(vpc),可使用网段资源创建的输出标识参数(uuid)作为输入参数传递给网络资源作为网段标识(vpcId)保存为某个属性参数。可以使用字符(比如:Ref:A),表示依赖资源A输出参数uuid;可以使用字符(比如:Ref:Fn::GetAtt":["A","vpcId"]),表示将资源A的输出参数vpcId赋值给目标参数。
具体的,所述使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整包括:
确定所述目标参数对应的第一资源定义块,以及确定所述自定义参数对应的第二资源定义块;
根据所述第一资源定义块,判断所述目标参数中是否存在第一缺失参数,以及根据所述第二资源定义块,判断所述自定义参数中是否存在第二缺失参数,其中,所述第一缺失参数在所述第一资源定义块中未存在对应的参数定义,所述第二缺失参数在所述第二资源定义块中未存在对应的参数定义;
若所述目标参数中存在第一缺失参数,或所述自定义参数中存在第二缺失参数,确定所述目标参数或所述自定义参数不完整;或
若所述目标参数中未存在第一缺失参数,且所述自定义参数中未存在第二缺失参数,确定所述目标参数以及所述自定义参数完整。
其中,资源块可以是某类资源的全部参数定义。
在该可选的实施方式中,可以对用户输入的某类资源的参数进行一一排查,确保所述用户输入的参数是完整的。可选的,若存在某个参数缺失,可以生成提示信息并输出。
具体的,所述判断所述目标参数以及所述自定义参数是否有效包括:
获取所述目标参数对应的第一预设格式要求以及获取所述自定义参数对应的第二预设格式要求;
判断所述目标参数的格式是否符合所述第一预设格式要求,以及判断所述自定义参数的格式是否符合所述第二预设格式要求;
若所述目标参数的格式符合所述第一预设格式要求,且所述自定义参数的格式符合所述第二预设格式要求,确定所述目标参数以及所述自定义参数有效;
若所述目标参数的格式未符合所述第一预设格式要求,或所述自定义参数的格式未符合所述第二预设格式要求,确定所述目标参数或所述自定义参数有效。
在该可选的实施方式中,可以对每个参数进行格式校验,判断参数是否符合格式要求,比如检测是否存在非法字符、是否超出取值范围等。比如创建子网掩码的长度范围为26-29,如果用户输入的值非整型或者不在目标范围内,则可输出提示信息。此外,如过网络资源的创建参数vpcId,即可依赖新建的网段资源,也可依赖历史创建的网段资源,若使用历史创建的网段资源参数vpcId,则形式如vpcId:”Vpc-hssd7sds”,其中Vpc-hssd7sds为网段资源的标识参数uuid,此时需要校验uuid是否是真实有效,否则将导致资源创建失败。
S14、若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板。
其中,所述资源模板可以包括所述模板参数以及所述自定义参数对应的所有资源的资源定义块,即包括了这些资源的参数定义。
S15、根据所述资源模板,创建资源栈。
其中,所述资源栈是用来管理一组资源创建、删除等操作的单位,其本身就是一组资源,即由创建的多个资源构成。
其中,资源模板是可以被看成是一种资源配置,根据资源模板记录了各项资源的参数(配置)。资源栈是一种数据结构,在资源栈在创建资源。根据所述资源模板,可以未有内容的空栈。然后,不断在这个空栈中创建资源,形成完整的资源栈。
具体的,所述根据所述资源模板,创建资源栈包括:
创建空栈;
从所述资源模板所指示的所有资源参数中确定存在依赖关系的依赖资源参数以及确定不存在依赖关系的非依赖资源参数;
在所述空栈中,根据所述非依赖资源参数,通过多线程并行创建非依赖资源,以及根据所述依赖资源参数,串行创建依赖资源,获得资源栈,其中,所述资源栈包括多个资源,所述资源栈存储在区块链中。
需要强调的是,为进一步保证上述资源栈的私密和安全性,上述资源栈还可以存储于一区块链的节点中。
在该可选的实施方式中,一个资源必须在其依赖的资源创建之后再创建,否则会创建失败。因此,对于不依赖其他资源的资源,可以通过多线程的方式同时(并行)进行创建,对于依赖其他资源的资源,必须先创建被依赖的资源(串行)。
作为一种可选的实施方式,所述方法还包括:
若所述资源栈创建失败,获取当前上下文环境;
将所述当前上下文环境序列化,获得序列化数据;
将所述序列化数据存储至数据库中。
在该可选的实施方式中,在资源创建过程中,如果某一资源创建失败,则保存当前上下文环境并序列化在数据库中。
作为一种可选的实施方式,所述将所述序列化数据存储至数据库中之后,所述方法还包括:
接收用户输入的断点续作指令,从所述数据库中获取所述序列化数据;
将所述序列化数据进行反序列化,获得所述当前上下文环境;
根据所述当前上下文环境,继续创建所述资源栈。
在该可选的实施方式中,当用户进行断点续作时,反序列化后进行执行。资源栈中的资源作为原子节点,当资源编排引擎创建完当前节点,结果实时显示给用户,可以直观地查看系统当前创建进度。
S16、根据所述资源栈,构建运行系统。
其中,所述运行系统由各种资源组成,为各种程序提供运行环境。
本发明实施例中,根据所述资源栈中的各个资源,调用对应的系统构建程序构建运行系统,若资源栈中的资源包括2核4G的云CPU,8G云内存,100G云空间,可以构建一个2核4G的CPU、8G内存、100G容量的云系统。
在图1所描述的方法流程中,本发明中,可以通过关联查询,获取到最新的可以使用的资源参数列表给用户选择,可以减少用户输入无效的资源参数,同时,在创建一组资源(资源栈)前,对资源参数进行校验,以将出错的原因反馈给用户,避免用户再次输入无效的资源参数,提高资源创建的成功率,从而提高了系统的构建效率。
请参见图2,图2是本发明公开的一种运行系统构建装置的较佳实施例的功能模块图。
在一些实施例中,所述运行系统构建装置运行于电子设备中。所述运行系统构建装置可以包括多个由程序代码段所组成的功能模块。所述中的各个程序段的程序代码可以存储于存储器中,并由至少一个处理器所执行,以执行图1所描述的运行系统构建方法中的部分或全部步骤。
本实施例中,所述运行系统构建装置根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:获取模块201、接收模块202、校验模块203、生成模块204、创建模块205及构建模块206。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。
获取模块201,用于通过关联查询,获取可用资源参数列表。
其中,所述关联查询可以是对所有资源进行查询,获取可用的资源,并查询出与这些可用资源关联的各项参数。
其中,可用资源参数列表为当前空闲的资源的资源参数。
接收模块202,用于接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数。
本发明实施例中,可以输出(显示)所述可用资源参数列表中的所有参数,用户可以根据所述可用资源参数列表中的所有参数来进行选择、输入自己想要的参数。
校验模块203,用于使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法。
其中,所述校验结果用来表示所述目标参数以及所述自定义参数是否正确以及出错的原因。
本发明实施例中,可以对所述目标参数以及所述自定义参数的类型、取值范围、长度等方面进行校验。比如子网掩码长度范围限制为22至26,可以通过设置子网掩码最长属性值(MaxValue)以及设置子网掩码最短属性值(MinValue),可以直接调用来判断子网掩码参数的长度是否符合规范。生成校验结果。
生成模块204,用于若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板。
其中,所述资源模板可以包括所述模板参数以及所述自定义参数对应的所有资源的资源定义块,即包括了这些资源的参数定义。
创建模块205,用于根据所述资源模板,创建资源栈。
其中,所述资源栈是用来管理一组资源创建、删除等操作的单位,其本身就是一组资源,即由创建的多个资源构成。
其中,资源模板是可以被看成是一种资源配置,根据资源模板记录了各项资源的参数(配置)。资源栈是一种数据结构,在资源栈在创建资源。根据所述资源模板,可以未有内容的空栈。然后,不断在这个空栈中创建资源,形成完整的资源栈。
构建模块206,用于根据所述资源栈,构建运行系统。
其中,所述运行系统由各种资源组成,为各种程序提供运行环境。
本发明实施例中,根据所述资源栈中的各个资源,调用对应的系统构建程序构建运行系统,若资源栈中的资源包括2核4G的云CPU,8G云内存,100G云空间,可以构建一个2核4G的CPU、8G内存、100G容量的云系统。
作为一种可选的实施方式,所述校验模块203使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果的方式具体为:
使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整;
若所述多个自定义参数完整,使用有效性校验算法,判断所述目标参数以及所述自定义参数是否有效;
若所述多个自定义参数有效,根据依赖关系校验算法,判断所述目标参数的依赖关系是否正确,以及判断所述自定义参数的依赖关系是否正确;
若所述目标参数的依赖关系正确,且所述自定义参数的依赖关系正确,生成表示所述自定义参数正确的校验结果。
在该可选的实施方式中,一种资源可以有多个参数,需要确保各种资源的参数符合规范且完整。不同资源之间可能存在依赖关系,需要确定用户输入的依赖关系是否正确,可以确认依赖关系的资源是否存在,若存在,确定依赖关系正确,若找不到依赖关系的资源,确定依赖关系不正确。比如网络资源(Network)依赖网段资源(vpc),可使用网段资源创建的输出标识参数(uuid)作为输入参数传递给网络资源作为网段标识(vpcId)保存为某个属性参数。可以使用字符(比如:Ref:A),表示依赖资源A输出参数uuid;可以使用字符(比如:Ref:Fn::GetAtt":["A","vpcId"]),表示将资源A的输出参数vpcId赋值给目标参数。
作为一种可选的实施方式,所述校验模块203使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整的方式具体为:
确定所述目标参数对应的第一资源定义块,以及确定所述自定义参数对应的第二资源定义块;
根据所述第一资源定义块,判断所述目标参数中是否存在第一缺失参数,以及根据所述第二资源定义块,判断所述自定义参数中是否存在第二缺失参数,其中,所述第一缺失参数在所述第一资源定义块中未存在对应的参数定义,所述第二缺失参数在所述第二资源定义块中未存在对应的参数定义;
若所述目标参数中存在第一缺失参数,或所述自定义参数中存在第二缺失参数,确定所述目标参数或所述自定义参数不完整;或
若所述目标参数中未存在第一缺失参数,且所述自定义参数中未存在第二缺失参数,确定所述目标参数以及所述自定义参数完整。
其中,资源块可以是某类资源的全部参数定义。
在该可选的实施方式中,可以对用户输入的某类资源的参数进行一一排查,确保所述用户输入的参数是完整的。可选的,若存在某个参数缺失,可以生成提示信息并输出。
作为一种可选的实施方式,所述校验模块203判断所述目标参数以及所述自定义参数是否有效的方式具体为:
获取所述目标参数对应的第一预设格式要求以及获取所述自定义参数对应的第二预设格式要求;
判断所述目标参数的格式是否符合所述第一预设格式要求,以及判断所述自定义参数的格式是否符合所述第二预设格式要求;
若所述目标参数的格式符合所述第一预设格式要求,且所述自定义参数的格式符合所述第二预设格式要求,确定所述目标参数以及所述自定义参数有效;
若所述目标参数的格式未符合所述第一预设格式要求,或所述自定义参数的格式未符合所述第二预设格式要求,确定所述目标参数或所述自定义参数有效。
在该可选的实施方式中,可以对每个参数进行格式校验,判断参数是否符合格式要求,比如检测是否存在非法字符、是否超出取值范围等。比如创建子网掩码的长度范围为26-29,如果用户输入的值非整型或者不在目标范围内,则可输出提示信息。此外,如过网络资源的创建参数vpcId,即可依赖新建的网段资源,也可依赖历史创建的网段资源,若使用历史创建的网段资源参数vpcId,则形式如vpcId:”Vpc-hssd7sds”,其中Vpc-hssd7sds为网段资源的标识参数uuid,此时需要校验uuid是否是真实有效,否则将导致资源创建失败。
作为一种可选的实施方式,所述根据所述资源模板,创建资源栈包括:
所述创建模块205,还用于创建空栈;
所述运行系统构建装置还可以包括:
确定模块,用于从所述资源模板所指示的所有资源参数中确定存在依赖关系的依赖资源参数以及确定不存在依赖关系的非依赖资源参数;
所述创建模块205,还用于在所述空栈中,根据所述非依赖资源参数,通过多线程并行创建非依赖资源,以及根据所述依赖资源参数,串行创建依赖资源,获得资源栈,其中,所述资源栈包括多个资源,所述资源栈存储在区块链中。
在该可选的实施方式中,一个资源必须在其依赖的资源创建之后再创建,否则会创建失败。因此,对于不依赖其他资源的资源,可以通过多线程的方式同时(并行)进行创建,对于依赖其他资源的资源,必须先创建被依赖的资源(串行)。
作为一种可选的实施方式,获取模块201,还用于若所述资源栈创建失败,获取当前上下文环境;
所述运行系统构建装置还可以包括:
序列化模块,用于将所述当前上下文环境序列化,获得序列化数据;
存储模块,用于将所述序列化数据存储至数据库中。
在该可选的实施方式中,在资源创建过程中,如果某一资源创建失败,则保存当前上下文环境并序列化在数据库中。
作为一种可选的实施方式,所述接收模块202,还用于所述存储模块将所述序列化数据存储至数据库中之后,接收用户输入的断点续作指令,从所述数据库中获取所述序列化数据;
所述运行系统构建装置还可以包括:
反序列化模块,用于将所述序列化数据进行反序列化,获得所述当前上下文环境;
所述创建模块205,还用于根据所述当前上下文环境,继续创建所述资源栈。
在该可选的实施方式中,当用户进行断点续作时,反序列化后进行执行。资源栈中的资源作为原子节点,当资源编排引擎创建完当前节点,结果实时显示给用户,可以直观地查看系统当前创建进度。
在图2所描述的运行系统构建装置中,可以通过关联查询,获取到最新的可以使用的资源参数列表给用户选择,可以减少用户输入无效的资源参数,同时,在创建一组资源(资源栈)前,对资源参数进行校验,以将出错的原因反馈给用户,避免用户再次输入无效的资源参数,提高资源创建的成功率,从而提高了系统的构建效率。
如图3所示,图3是本发明实现运行系统构建方法的较佳实施例的电子设备的结构示意图。所述电子设备3包括存储器31、至少一个处理器32、存储在所述存储器31中并可在所述至少一个处理器32上运行的计算机程序33及至少一条通讯总线34。
本领域技术人员可以理解,图3所示的示意图仅仅是所述电子设备3的示例,并不构成对所述电子设备3的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备3还可以包括输入输出设备、网络接入设备等。
所述电子设备3还包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(InternetProtocol Television,IPTV)、智能式穿戴式设备等。所述电子设备3所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
所述至少一个处理器32可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、分立硬件组件等。该处理器32可以是微处理器或者该处理器32也可以是任何常规的处理器等,所述处理器32是所述电子设备3的控制中心,利用各种接口和线路连接整个电子设备3的各个部分。
所述存储器31可用于存储所述计算机程序33和/或模块/单元,所述处理器32通过运行或执行存储在所述存储器31内的计算机程序和/或模块/单元,以及调用存储在存储器31内的数据,实现所述电子设备3的各种功能。所述存储器31可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备3的使用所创建的数据(比如音频数据等)等。此外,存储器31可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)、至少一个磁盘存储器件、闪存器件等。
结合图1,所述电子设备3中的所述存储器31存储多个指令以实现一种运行系统构建方法,所述处理器32可执行所述多个指令从而实现:
通过关联查询,获取可用资源参数列表;
接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数;
使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法;
若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板;
根据所述资源模板,创建资源栈;
根据所述资源栈,构建运行系统。
具体地,所述处理器32对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在图3所描述的电子设备3中,可以通过关联查询,获取到最新的可以使用的资源参数列表给用户选择,可以减少用户输入无效的资源参数,同时,在创建一组资源(资源栈)前,对资源参数进行校验,以将出错的原因反馈给用户,避免用户再次输入无效的资源参数,提高资源创建的成功率,从而提高了系统的构建效率。
所述电子设备3集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种运行系统构建方法,其特征在于,所述运行系统构建方法包括:
通过关联查询,获取可用资源参数列表;
接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数;
使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法;
若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板;
根据所述资源模板,创建资源栈;
根据所述资源栈,构建运行系统。
2.根据权利要求1所述的运行系统构建方法,其特征在于,所述使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果包括:
使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整;
若所述多个自定义参数完整,使用有效性校验算法,判断所述目标参数以及所述自定义参数是否有效;
若所述多个自定义参数有效,根据依赖关系校验算法,判断所述目标参数的依赖关系是否正确,以及判断所述自定义参数的依赖关系是否正确;
若所述目标参数的依赖关系正确,且所述自定义参数的依赖关系正确,生成表示所述自定义参数正确的校验结果。
3.根据权利要求2所述的运行系统构建方法,其特征在于,所述使用完整性校验算法,判断所述目标参数以及所述自定义参数是否完整包括:
确定所述目标参数对应的第一资源定义块,以及确定所述自定义参数对应的第二资源定义块;
根据所述第一资源定义块,判断所述目标参数中是否存在第一缺失参数,以及根据所述第二资源定义块,判断所述自定义参数中是否存在第二缺失参数,其中,所述第一缺失参数在所述第一资源定义块中未存在对应的参数定义,所述第二缺失参数在所述第二资源定义块中未存在对应的参数定义;
若所述目标参数中存在第一缺失参数,或所述自定义参数中存在第二缺失参数,确定所述目标参数或所述自定义参数不完整;或
若所述目标参数中未存在第一缺失参数,且所述自定义参数中未存在第二缺失参数,确定所述目标参数以及所述自定义参数完整。
4.根据权利要求2所述的运行系统构建方法,其特征在于,所述判断所述目标参数以及所述自定义参数是否有效包括:
获取所述目标参数对应的第一预设格式要求以及获取所述自定义参数对应的第二预设格式要求;
判断所述目标参数的格式是否符合所述第一预设格式要求,以及判断所述自定义参数的格式是否符合所述第二预设格式要求;
若所述目标参数的格式符合所述第一预设格式要求,且所述自定义参数的格式符合所述第二预设格式要求,确定所述目标参数以及所述自定义参数有效;
若所述目标参数的格式未符合所述第一预设格式要求,或所述自定义参数的格式未符合所述第二预设格式要求,确定所述目标参数或所述自定义参数有效。
5.根据权利要求1至4中任一项所述的运行系统构建方法,其特征在于,所述根据所述资源模板,创建资源栈包括:
创建空栈;
从所述资源模板所指示的所有资源参数中确定存在依赖关系的依赖资源参数以及确定不存在依赖关系的非依赖资源参数;
在所述空栈中,根据所述非依赖资源参数,通过多线程并行创建非依赖资源,以及根据所述依赖资源参数,串行创建依赖资源,获得资源栈,其中,所述资源栈包括多个资源,所述资源栈存储在区块链中。
6.根据权利要求1至4中任一项所述的运行系统构建方法,其特征在于,所述运行系统构建方法还包括:
若所述资源栈创建失败,获取当前上下文环境;
将所述当前上下文环境序列化,获得序列化数据;
将所述序列化数据存储至数据库中。
7.根据权利要求6所述的运行系统构建方法,其特征在于,所述将所述序列化数据存储至数据库中之后,所述运行系统构建方法还包括:
接收用户输入的断点续作指令,从所述数据库中获取所述序列化数据;
将所述序列化数据进行反序列化,获得所述当前上下文环境;
根据所述当前上下文环境,继续创建所述资源栈。
8.一种运行系统构建装置,其特征在于,所述运行系统构建装置包括:
获取模块,用于通过关联查询,获取可用资源参数列表;
接收模块,用于接收用户从所述可用资源参数列表中选择的目标参数以及所述用户输入的自定义参数;
校验模块,用于使用校验算法,对所述目标参数以及所述自定义参数进行校验,获得校验结果,其中,所述校验算法包括完整性校验算法、有效性校验算法以及依赖关系校验算法;
生成模块,用于若所述校验结果表示所述目标参数以及所述自定义参数正确,根据所述目标参数以及所述自定义参数,生成资源模板;
创建模块,用于根据所述资源模板,创建资源栈;
构建模块,用于根据所述资源栈,构建运行系统。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序以实现如权利要求1至7中任意一项所述的运行系统构建方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现如权利要求1至7中任意一项所述的运行系统构建方法。
CN202010329359.9A 2020-04-23 2020-04-23 运行系统构建方法、装置、电子设备及存储介质 Pending CN111679893A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010329359.9A CN111679893A (zh) 2020-04-23 2020-04-23 运行系统构建方法、装置、电子设备及存储介质
PCT/CN2020/099312 WO2021212661A1 (zh) 2020-04-23 2020-06-30 运行系统构建方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010329359.9A CN111679893A (zh) 2020-04-23 2020-04-23 运行系统构建方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN111679893A true CN111679893A (zh) 2020-09-18

Family

ID=72433829

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010329359.9A Pending CN111679893A (zh) 2020-04-23 2020-04-23 运行系统构建方法、装置、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN111679893A (zh)
WO (1) WO2021212661A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112363935A (zh) * 2020-11-11 2021-02-12 平安普惠企业管理有限公司 数据联调方法、装置、电子设备及存储介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114024759B (zh) * 2021-11-09 2024-02-02 北京天融信网络安全技术有限公司 安全策略管控方法、装置、计算机设备和介质
CN114379322A (zh) * 2022-01-18 2022-04-22 上汽通用五菱汽车股份有限公司 车载空调工作模式的自定义设置方法、装置、设备及介质
CN114595216A (zh) * 2022-03-21 2022-06-07 京东科技信息技术有限公司 数据校验方法、装置、存储介质及电子设备
CN114944987B (zh) * 2022-05-23 2024-04-12 西安韵通网络科技有限公司 一种通信设备的运行参数即时更新方法及通信设备
CN116150765B (zh) * 2023-02-28 2023-08-04 上海安般信息科技有限公司 一种基于api依赖的模糊变异方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731521B (zh) * 2013-12-23 2018-02-16 伊姆西公司 用于配置数据中心的方法及设备
CN107306201A (zh) * 2016-04-22 2017-10-31 华为技术有限公司 虚拟化网络的部署方法和部署系统
CN110019835B (zh) * 2017-11-06 2023-03-14 阿里巴巴集团控股有限公司 资源编排方法、装置以及电子设备
CN107943515A (zh) * 2017-12-14 2018-04-20 郑州云海信息技术有限公司 一种云管理平台管理服务编排模板的方法和装置
CN109828840A (zh) * 2018-12-29 2019-05-31 东软集团股份有限公司 资源编排方法、装置、存储介质及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112363935A (zh) * 2020-11-11 2021-02-12 平安普惠企业管理有限公司 数据联调方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
WO2021212661A1 (zh) 2021-10-28

Similar Documents

Publication Publication Date Title
CN111679893A (zh) 运行系统构建方法、装置、电子设备及存储介质
CN110915166B (zh) 区块链
CN105573828B (zh) 一种操作处理方法及装置
EP3779760B1 (en) Blockchain-based data processing method and apparatus, and electronic device
WO2021217863A1 (zh) 订单标识生成方法、装置、服务器及存储介质
Golle et al. Secure distributed computing in a commercial environment
CN110400217B (zh) 智能合约的规则变更处理方法及装置
CN112789825A (zh) 用于转移对数字资源的访问的计算机实现的系统和方法
CN112948851A (zh) 用户认证方法、装置、服务器及存储介质
WO2021139778A1 (zh) 系统调度工作流生成方法、系统、设备及计算机可读存储介质
CN111639309A (zh) 一种数据处理方法、装置、节点设备及存储介质
CN111522574B (zh) 差分包生成方法及相关设备
CN111177703B (zh) 操作系统数据完整性的确定方法及装置
CN111597269A (zh) 一种基于区块链的合约实现方法、装置及设备
WO2021184642A1 (zh) 基于区块链的交易方法、装置、电子设备及可读存储介质
CN112053143A (zh) 资金路由方法、装置、电子设备及存储介质
CN111899018A (zh) 订单数据处理方法、装置、服务器及存储介质
CN112181599A (zh) 模型训练方法、装置及存储介质
CN110535724B (zh) 应用程序网络读写限制方法、装置、电子设备及存储介质
CN112116348A (zh) 一种对节点资源的访问控制方法
CN115021995B (zh) 多渠道登录方法、装置、设备及存储介质
WO2020107223A1 (zh) 多链信息管理方法、装置、存储介质和区块链身份解析器
CN113051622B (zh) 索引构建方法、装置、设备和存储介质
CN112118290B (zh) 一种基于程序分析的数据资源的管控方法
CN114124524A (zh) 一种云平台权限设置方法、装置、终端设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40031276

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination