配置文件的校验方法、装置、设备及存储介质

文档序号:189964 发布日期:2021-11-02 浏览:41次 >En<

阅读说明:本技术 配置文件的校验方法、装置、设备及存储介质 (Configuration file checking method, device, equipment and storage medium ) 是由 何小飞 于 2021-08-10 设计创作,主要内容包括:本申请涉及配置文件校验技术领域,提供一种配置文件的校验方法、装置、设备及计算机可读存储介质,该方法包括:获取应用程序的配置文件,配置文件包括多个键值对;对配置文件中的所有键值对进行验证,判断配置文件中是否存在非法键值对;若判定配置文件中不存在非法键值对,获取运行配置文件所需的至少两个预设运行环境;在每个预设运行环境中运行配置文件,得到与各预设运行环境对应的配置文件运行性能;根据各预设运行环境对应的配置文件运行性能,确定配置文件在不同预设运行环境下的性能差异信息;根据性能差异信息确定配置文件是否符合应用程序的使用要求。本申请还涉及区块链技术,符合应用程序使用要求的配置文件可以存储在区块链中。(The application relates to the technical field of configuration file verification, and provides a configuration file verification method, a configuration file verification device, configuration file verification equipment and a computer readable storage medium, wherein the method comprises the following steps: acquiring a configuration file of an application program, wherein the configuration file comprises a plurality of key value pairs; verifying all key value pairs in the configuration file, and judging whether illegal key value pairs exist in the configuration file; if the configuration file is judged to have no illegal key value pair, at least two preset operation environments required by the operation of the configuration file are obtained; running the configuration files in each preset running environment to obtain the running performance of the configuration files corresponding to each preset running environment; determining performance difference information of the configuration files under different preset operation environments according to the operation performance of the configuration files corresponding to each preset operation environment; and determining whether the configuration file meets the use requirement of the application program according to the performance difference information. The application also relates to a block chain technology, and the configuration file meeting the use requirement of the application program can be stored in the block chain.)

配置文件的校验方法、装置、设备及存储介质

技术领域

本申请涉及配置文件校验技术领域,尤其涉及一种配置文件的校验方法、装置、设备及计算机可读存储介质。

背景技术

目前,Apollo(阿波罗)配置中心是目前比较流行的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,且能够实现基于人工智能的分布式系统进行应用的配置。在使用Apollo的过程中,一般是通过手动将相关的配置在Apollo的后台页面进行添加后保存在Apollo配置中心,通过这一方式无论上传的配置文件是否有误都能保存在配置中心并推送到应用程序上或对应用程序进行更新,这样因缺少配置文件的校验过程导致配置过程或配置文件出错,降低了系统的数据准确性,可能还会导致应用程序使用出现漏洞或应用程序无法正常运行的情况。

发明内容

本申请的主要目的在于提供一种配置文件的校验方法、装置、设备及计算机可读存储介质,旨在对配置文件进行校验,避免配置过程或配置文件出错的问题。

第一方面,本申请提供一种配置文件的校验方法,所述配置文件的校验方法包括以下步骤:

获取应用程序的配置文件,所述配置文件包括多个键值对;

对所述配置文件中的所有键值对进行验证,判断所述配置文件中是否存在非法键值对;

若判定所述配置文件中不存在所述非法键值对,获取运行所述配置文件所需的至少两个预设运行环境;

在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能;

根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息;

根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求。

第二方面,本申请还提供一种配置文件的校验装置,所述配置文件的校验装置包括:

配置文件获取模块,用于获取应用程序的配置文件,所述配置文件包括多个键值对;

键值对验证模块,用于对所述配置文件中的所有键值对进行验证,判断所述配置文件中是否存在非法键值对;

运行环境获取模块,用于若判定所述配置文件中不存在所述非法键值对,获取运行所述配置文件所需的至少两个预设运行环境;

运行性能确定模块,用于在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能;

性能差异信息确定模块,用于根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息;

使用要求确定模块,用于根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求。

第三方面,本申请还提供一种计算机设备,所述计算机设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上述的配置文件的校验方法的步骤。

第四方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上述的配置文件的校验方法的步骤。

本申请提供一种配置文件的校验方法、装置、设备及计算机可读存储介质,本申请通过获取应用程序的配置文件,所述配置文件包括多个键值对;对所述配置文件中的所有键值对进行验证,判断所述配置文件中是否存在非法键值对;若判定所述配置文件中不存在所述非法键值对,获取运行所述配置文件所需的至少两个预设运行环境;在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能;根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息;根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求。解决了应用程序进行升级或推送时,配置文件因缺少数据校验过程导致应用程序升级出错或运行时出错,有效节省人工比对配置文件的资源,以及确保了配置文件的运行性能和减少配置文件中出现的错误。

附图说明

为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请一实施例提供的一种配置文件的校验方法的流程示意图;

图2为本申请一实施例提供的配置文件的校验方法的一场景示意图;

图3为本申请一实施例提供的一种配置文件的校验装置的示意性框图;

图4为本申请一实施例涉及的计算机设备的结构示意框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。

本申请实施例提供一种配置文件的校验方法、装置、计算机设备及计算机可读存储介质。其中,该配置文件的校验方法可应用于终端设备中,该终端设备可以平板电脑、笔记本电脑、台式电脑等电子设备。也可以应用于服务器中,该服务器可以是单独的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

请参照图1,图1为本申请的实施例提供的一种配置文件的校验方法的流程示意图。

如图1所示,该配置文件的校验方法包括步骤S101至步骤S104。

步骤S101、获取应用程序的配置文件,所述配置文件包括多个键值对。

示例性的,可以获取待推送给各个客户端的应用程序的配置文件,也即是该应用程序还未推送给客户端,或是对应用程序进行更新的配置文件,该配置文件用于对应用程序进行升级。

本申请实施例可以基于人工智能技术对应用程序的配置文件进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。

示例性的,配置文件可以包括支撑应用程序基础功能运行的配置文件,还可以包括应用程序的任务配置文件,如应用程序在推送给不同任务的客户端时,任务配置文件用于支撑应用程序执行不同的任务。

示例性的,用于更新应用程序的配置文件会通过Apollo(阿波罗)配置中心实现对应用程序的更新,相同的,进行推送的应用程序的配置文件也会通过Apollo(阿波罗)配置中心,可以基于Apollo(阿波罗)配置中心对应用程序的配置文件进行校验,若通过校验,则对应用程序进行更新,若不通过校验,则及时提醒配置文件出现的问题,以调整配置文件,不对应用程序执行更新或推送。

如图2所示,图2为本申请一实施例提供的一种配置文件的校验方法的一场景图。服务端从用于部署配置文件的终端中获取配置文件,以及在服务端中进行校验,可以理解的,用于部署配置文件的终端可以是配置文件部署人员所使用的终端,服务端中包括Apollo(阿波罗)配置中心;在服务端完成对配置文件的校验后,若配置文件符合应用程序的使用要求,则将配置文件发送给客户端,也即是安装有应用程序的终端;若配置文件不符合应用程序的使用要求,将配置文件发送给用于部署配置文件的终端,以及指示所述部署人员对配置文件进行修改。

通过服务端对配置文件进行校验,可以有效减少配置文件缺乏校验而导致应用程序无法正常运行的情况。

在一些实施方式中,用于部署配置文件的终端可以将配置文件发送到区块链并存储于区块链中,服务端可以从区块链中获取配置文件。

示例性的,服务端向区块链网络广播配置文件调用请求,配置文件调用请求可以包括文件地址,也可以包括用于标识文件地址的地址标识以便根据地址标识与文件地址的映射关系得到文件地址。文件地址用于指示配置文件(chaincode)在区块链中的存储位置,如存储在区块链的某一区块(block)上;区块链网络根据文件地址就知道当前服务端需要调取的配置文件在区块链中的存储位置,可以找到区块链的对应区块提取出服务端所需的配置文件。

可以理解的,将配置文件存储在区块链中可以有效减少服务端中的存储压力,加快服务端的处理效率,并且具有一定的安全性,其中,本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。

示例性的,配置文件中包括多个利用键值对进行存储的配置项,不同的配置项可以用于给配置文件对应的应用程序提供不同的功能。

在一些实施例中,获取应用程序的配置文件包括:获取所述应用程序的推送指令;根据所述推送指令,获取所述应用程序的配置文件。

示例性的,应用程序未进行推送时,可以先将配置文件存储在Apollo(阿波罗)配置中心中,当接收到应用程序的推送指令时,在Apollo(阿波罗)配置中心获取应用程序对应的配置文件,以进行校验。可以理解的,Apollo(阿波罗)配置中心可以存储多个配置文件,分别对应不同的应用程序,以使应用程序需要更新或推送时,能够缩短将配置文件发送到对应客户端的应用程序中的发送时间。

示例性的,应用程序的推送指令可以包括应用程序的标识,例如应用程序的识别号,可以通过应用程序的标识与配置文件的标识,在配置中心中确定与应用程序对应的配置文件。

步骤S102、对所述配置文件中的所有键值对进行验证,判断所述配置文件中是否存在非法键值对。

示例性的,配置文件中包括利用键值对(Key-Value)进行存储的配置项,其中,Key固定是字符串,使用字符串对象来进行表示,Value可以是字符串、列表、哈希、集合、有序集合对象中的任意一种,由于没有对Key的使用规范做强制的限制,开发人员可以很随意的对Key进行创建及使用,目前对Key的管理,通常都是在使用前形成文档规范,以避免Key的滥用与错用,但是仅仅通过文档规范不能对Key的使用形成强制管理,可能导致Key的使用场景、过期策略、命名规范、长度等不合法,导致应用程序的运行错误或异常。

示例性,通过对配置文件的键值对进行验证,判断配置文件是否存在非法键值对,若判定配置文件中存在至少一个非法键值对时,输出错误信息,以及不对应用程序进行更新或推送。

例如,非法键值对可以是黑名单字符,可以利用预设的黑名单字符对配置文件的键值对进行验证,若配置文件中键值对至少有一个Key与黑名单字符匹配,判定配置文件存在非法键值对,输出错误信息。通过发现是否存在非法键值对,可以有效避免受到xss攻击的风险。

示例性的,若不存在非法键值对,对配置文件进行不同运行环境的检测,以对配置文件的适应性进行分析,减少应用程序在不同运行环境下运行的错误几率。

在一些实施例中,所述对所述配置文件中的所有键值对进行验证,包括:获取审核信息,所述审核信息包括审核通过的若干预设键值对;响应于所述审核信息,根据所述审核信息中的若干预设键值对对所述配置文件中的键值对进行验证。

示例性的,键值对的审核人员依据预先建立的开发使用规范创建预设键值对,开发使用规范包括键值对的使用场景、命名规范及过期策略等,审核人员将规范创建的预设键值对存储在审核信息中,当配置中心或进行审核的服务器接收到审核信息时,获取审核信息中的若干通过审核的预设键值对,并对所述审核信息进行响应,通过审核信息中的预设键值对对配置文件中的键值对进行验证。

在一些实施方式中,所述根据所述审核信息中的若干预设键值对对所述配置文件中的键值对进行验证,包括:遍历所述配置文件中的所有键值对;根据遍历得到的键值对与所述预设键值对逐一进行匹配;根据匹配结果判断所述键值对是否存在非法键值对。

示例性的,对配置文件进行遍历,以得到配置文件中所有的键值对,通过遍历得到的键值对,与审核信息中的预设键值对逐一进行匹配,并且根据匹配的结果判断是否存在非法键值对。

例如,遍历得到5个键值对,为A、B、C、D、E,预设键值对有十个,编号1-10,将A与编号1-10的预设键值对逐一进行匹配,若A与编号1-10的预设键值中的其中一个预设键值对能够匹配,则判定A不是非法键值对,可以理解的,B、C、D、E执行与A相同的操作,若B、C、D、E均能在编号1-10的预设键值对中匹配成功,则可以判定该配置文件不存在非法键值对。若A、B、C、D、E中至少有一个键值对无法与编号1-10的预设键值对匹配,则判定该配置文件存在非法键值对。

示例性的,通过判定是否存在非法键值对,可以避免在运行配置文件时发生的错误几率,以及降低将配置文件加入到应用程序后,应用程序受到xss攻击的风险。

步骤S103、若判定所述配置文件中不存在所述非法键值对,获取运行所述配置文件所需的至少两个预设运行环境。

示例性的,若配置文件没有通过键值对的验证,输出非法键值对的异常信息,不需获取运行环境。

示例性的,若配置文件通过键值对的验证,即配置文件不存在非法键值对时,获取运行配置文件所需的至少两个预设运行环境。

示例性的,运行环境可以是应用程序开发过程中的测试运行环境、开发运行环境、预生产运行环境、生产运行环境等运行环境,也可以是应有程序的应用运行环境,例如金融任务的应用运行环境和客服沟通任务的应用运行环境。

示例性的,可以通过配置文件对应的应用程序的应用环境,获取对应的配置文件的应用运行环境,也可以通过与配置文件相似的其他配置文件中获取其他配置文件的测试运行环境、预生产运行环境等,以通过其他配置文件的运行环境运行该配置文件。

通过获取的预设运行环境运行配置文件,以得到配置文件在不同预设环境下的运行性能。通过运行性能能够分析配置文件是否能够支持不同的运行环境,从而判定应用程序是否能够在不同的运行环境中正常运行。

步骤S104、在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能。

示例性的,获取预设运行环境后,在每个预设运行环境中运行配置文件,得到配置文件在各个预设运行环境中的运行性能。

例如,将配置文件在金融任务的运行环境中运行,得到配置文件在实现金额计算时的数字运算性能以及数字匹配性能,或是将配置文件在信息匹配任务的应用环境中运行,得到配置文件在实现文字信息匹配时的文字信息匹配性能。可以理解的,若配置文件在金融任务的运行环境中运行性能不佳,则利用该配置文件对应的应用程序运行时也可能会出现运行慢等问题。

通过在不同运行环境中运行配置文件,可以分析配置文件在各个运行环境下的运行性能,以对配置文件分析是否适合应用于应用程序,以及能否使应用程序实现预期功能。

在一些实施例中,所配置文件包括多个配置项,每个所述配置项与所述键值对一一对应,所述方法还包括:根据所述配置项对应的键值对,将多个所述配置项进行分组,确定各所述配置项的配置项组别。所述在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能,包括:在每个预设运行环境中运行所述配置文件,得到每个所述配置项组别在各所述预设运行环境下的运行性能。

示例性的,配置文件中包括多个配置项,可以理解的,配置项用于支持使用所述配置文件的应用程序实现不同的功能,如运算功能和匹配功能。

示例性的,配置项与键值对一一对应,通过配置项的键值对,对配置项进行分组,确定每一个配置项的配置项组别。

示例性的,配置项可以以键值对的形式存储在配置文件中,通过对比键值对中的Key的相似度,对配置项进行分组,可以理解的,在同一配置项组别中的配置项的作用或属性也是相似的,如共同支持应用程序的数字运算功能。

示例性的,在每一个预设运行环境中运行配置文件,可以得到每一个配置项组别在每个预设运行环境下的运行性能。

在一些实施例方式中,所述在每个预设运行环境中运行所述配置文件,得到每个所述配置项组别在各所述预设运行环境下的运行性能,包括:在每个预设运行环境中运行所述配置文件,得到每个所述配置项的运行性能;基于每个所述配置项组别对应的性能确定算法,根据每个所述配置项组别中配置项的运行性能,确定每个所述配置项组别在各所述预设运行环境下的运行性能。

示例性的,在预设运行环境运行配置文件时,可以得到每一个配置项的运行性能,可以通过配置项组别中包含的所有配置项的运行性能确定该配置项组别的运行性能。

示例性的,不同的配置项组别可以用不同的性能确定算法来确定运行性能,也可以用相同的性能确定算法来确定,例如通过非法字符的性能确定算法对用于文字信息匹配的配置项组别进行性能的确定,以及通过MD5(Message-Digest Algorithm 5)校验的性能确定算法对用于存储信息或显示信息的配置项组别进行性能的确定。

例如,利用MD5(Message-Digest Algorithm 5)校验的性能确定算法确定配置项组别的运行性能时,通过配置项组别中的所有配置项的运行性能确定配置项组别的运行性能,可以理解的,可以通过数据信息来表征配置项组别的运行性能,即利用运行性能信息表征运行性能;对配置项对应的运行性能信息进行信息填充操作,以使配置项对应的运行性能信息的大小满足对512n求余等于448n,并在配置项对应的运行性能信息末尾添加64n位的值,其中,n为大于0的自然数,64n位的值的内容用于指示配置项的运行性能信息的大小。完成信息填充操作后,对配置项的运行性能信息进行分段处理,得到n段性能信息,其中,n大于等于1,将n段性能信息输入哈希值计算模型,得到每一段性能信息对应的哈希值,按照地址的顺序将每段性能信息对应的哈希值从低到高排列,得到最终的哈希值,最终的哈希值即为配置项的运行性能值。其中,在哈希值计算模型中,包括4种目标函数,每种目标函数执行64次,第一段性能信息进入哈希值计算模型,经过每种目标函数的64次运算后,得到第一段性能信息的运算结果,将所述第一段性能信息的运算结果加上第一段性能信息得到第一段性能信息对应的哈希值。将n端性能信息对应的哈希值进行排序,得到配置项的运行性能值。

示例性的,得到配置项的运行性能值后,可以通过求均值或加权计算确定配置项所在配置项组别的运行性能。

通过确定配置项组别的运行性能可以更加准确地确定配置文件在预设运行环境下的运行性能,以及能够提高确定配置文件的运行性能的速度。

步骤S105、根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息。

示例性的,将配置文件在不同预设运行环境中运行得到的运行性能进行对比,可以得到配置文件在不同预设环境下的性能差异信息。

示例性的,可以将配置文件在不同预设运行环境中运行得到的运行性能进行一一对比,得到配置文件在两个不同预设环境下的性能差异信息,也可以一对多比对,以某一个预设环境下的运行性能作为目标运行性能,其他预设环境下的运行性能均与目标运行性能进行对比,得到各预设环境的运行性能与目标运行性能的性能差异信息。

在一些实施例中,所述根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息,包括:根据每个所述配置项组别在各所述预设运行环境下的运行性能,确定每个所述配置项组别的性能差异信息。

示例性的,可以通过步骤S104中的性能确定算法,确定每一个配置项组别在不同预设运行环境下对应的运行性能。以及根据不同预设运行环境下对应的配置项组别的运行性能,确定所述配置项组别在不同预设运行环境下的组别性能差异信息,具体的,可以通过配置项组别对应的运行性能值确定配置项组别在不同预设运行环境下的组别性能差异信息。可以理解的,若两个配置项组别的运行性能值相等,则配置项组别中的所有配置项在对应的预设运行环境下运行时没有性能的差异,若两个配置项组别的运行性能值不相等,则在这两个配置项组别中至少有一项配置项对应的预设运行环境下运行时存在性能的差异,并且配置项在不同预设运行环境下运行时性能的差异与配置项组别对应的运行性能值的差值的大小正相关。

通过对配置项进行分组,可以更方便地找到存在性能差异的配置项,以对配置文件以及相关的配置项进行调整,无需逐个寻找相关的配置项,加快处理速率;以及通过每个配置项组别在不同预设运行环境下的运行性能值的差值,可以更准确地确定配置文件在不同运行环境下的差异性能。

在一些实施例中,方法还包括:根据各所述配置项组别对应的组别性能差异信息,判断所述配置项组别是否通过性能校验;若所述配置项组别没有通过所述性能校验,调整所述配置项组别中至少一个配置项。

示例性的,可以通过配置项组别在至少两个预设运行环境下对应的运行性能值的差值,判断该配置项组别能否通过性能校验,例如,获取目标运行性能值差值,根据配置项组别对应的运行性能值的差值与目标运行性能值差值对比,若配置项组别的运行性能值的差值处于目标运行性能值差值内,判定该配置项组别通过性能校验。

示例性的,若配置项组别的运行性能值的差值处于目标运行性能值差值外,判定该配置项组别没有通过性能校验,输出错误信息,响应于校验人员基于错误信息的输入,调整配置项组别中至少一个配置项,可以理解的,调整后的配置项需要进行校验,可以将调整后的配置文件进行是否存在非法键值对的判断,以及运行环境性能差异信息的确定,即重新执行上述S110-S150,对调整后的配置文件进行校验。

通过判定配置项是否通过性能校验,从而判断配置文件是否符合要求,以实现对配置文件的校验以及调整部署的目的。

步骤S106、根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求。

示例性的,性能差异信息用于指示配置文件在不同预设运行环境下运行性能的差异,可以理解的,可以设定一个标准性能差异值范围,若得到的性能差异信息中的性能差异值位于标准性能差异值范围内,可以认为配置文件符合应用程序的使用要求,若得到的性能差异信息中的性能差异值位于标准性能差异值范围外,则配置文件不符合应用程序的使用要求,若坚持运行该配置文件,可能会导致应用程序出现错误运行、闪退、卡帧等问题。

在一些实施例中,所述根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求,包括:若每个所述配置项组别的性能差异信息均小于每个所述配置项组别对应的预设差异阈值,确定所述配置文件符合所述应用程序的使用要求。

示例性的,可以通过配置文件中每个配置项组别的性能差异信息与预设差异阈值确定配置文件是否符合应用程序的使用要求。

若配置文件中每个配置项组别的性能差异信息均小于每个所述配置项组别对应的预设差异阈值,可以确定所述配置文件符合所述应用程序的使用要求,并将配置文件推送到目标终端,以指示目标终端基于配置文件对应用程序进行更新。

若配置文件中至少有一个配置项组别的性能差异信息不小于配置项组别对应的预设差异阈值,可以确定所述配置文件不符合所述应用程序的使用要求,输出错误信息或将配置文件发送至校验人员的终端。

在另一些实施方式中,可以设定一个预设目标差异阈值,每一个配置项组别的性能差异信息均与预设目标差异阈值对比,若每一个配置项组别的性能差异信息均小于目标差异阈值,确定所述配置文件符合所述应用程序的使用要求;若至少有一个配置项组别的性能差异信息不小于预设目标差异阈值,确定所述配置文件不符合所述应用程序的使用要求,其中,配置项组别的性能差异信息可以用运行性能值的差值来表征。

示例性的,若确定所述配置文件符合所述应用程序的使用要求,服务端可以将符合所述应用程序的使用要求的配置文件发送并存储至区块链中;终端安装的应用程序需要利用配置文件进行配置更新时,可以从区块链中获取相应的配置文件,其中,从区块链中获取相应的配置文件时,可以基于人工智能的决策树、相似度匹配或聚类算法对符合要求的配置文件进行获取。

可以理解的,将配置文件存储在区块链中,既能保证配置文件的安全性,保护信息不被泄露,还能减轻服务端的存储压力。

上述实施例提供的配置文件的校验方法,通过对配置文件的键值对进行验证,解决应用程序进行升级或推送时,配置文件缺少数据校验过程,有效节省人工比对配置文件的资源;以及通过在不同预设运行环境下运行配置文件,将得到的运行性能进行计算得到性能差异信息,可以使配置文件适用多种运行环境,提高配置文件的适用性,减少了配置文件在不同运行环境下发生错误的几率。

请参阅图3,图3是本申请一实施例提供的一种配置文件的校验装置的示意图,该配置文件的校验装置可以配置于服务器或终端中,用于执行前述的配置文件的校验方法。

如图3所示,该配置文件的校验装置,包括:配置文件获取模块110、键值对验证模块120、运行环境获取模块130、运行性能确定模块140、性能差异信息确定模块150、使用要求确定模块160。

配置文件获取模块110,用于获取应用程序的配置文件,所述配置文件包括多个键值对。

键值对验证模块120,用于对所述配置文件中的所有键值对进行验证,判断所述配置文件中是否存在非法键值对。

运行环境获取模块130,用于若判定所述配置文件中不存在所述非法键值对,获取运行所述配置文件所需的至少两个预设运行环境。

运行性能确定模块140,用于在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能。

性能差异信息确定模块150,用于根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息。

使用要求确定模块160,用于根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求。

示例性的,配置文件的校验装置还包括配置项分组模块、运行性能确定模块140还包括组别的运行性能确定子模块。

配置项分组模块,用于根据所述配置项对应的键值对,将多个所述配置项进行分组,确定各所述配置项的配置项组别。

组别的运行性能确定子模块,用于在每个预设运行环境中运行所述配置文件,得到每个所述配置项组别在各所述预设运行环境下的运行性能。

示例性的,组别的运行性能确定子模块还包括配置项的运行性能确定子模块、性能确定算法计算子模块。

配置项的运行性能确定子模块,用于在每个预设运行环境中运行所述配置文件,得到每个所述配置项的运行性能。

性能确定算法计算子模块,用于基于每个所述配置项组别对应的性能确定算法,根据每个所述配置项组别中配置项的运行性能,确定每个所述配置项组别在各所述预设运行环境下的运行性能。

示例性的,性能差异信息确定模块150还包括组别的性能差异信息确定子模块。

组别的性能差异信息确定子模块,用于根据每个所述配置项组别在各所述预设运行环境下的运行性能,确定每个所述配置项组别的性能差异信息。

使用要求确定模块160,还用于若每个所述配置项组别的性能差异信息均小于每个所述配置项组别对应的预设差异阈值,确定所述配置文件符合所述应用程序的使用要求。

示例性的,配置文件的校验装置还包括组别校验模块、配置项调整模块。

组别校验模块,用于根据所述配置项组别对应的性能差异信息,判断所述配置项组别是否通过性能校验。

配置项调整模块,用于若所述配置项组别没有通过所述性能校验,调整所述配置项组别中至少一个配置项。

示例性的,键值对验证模块120还包括审核信息获取子模块。

审核信息获取子模块,用于获取审核信息,所述审核信息包括审核通过的若干预设键值对。

键值对验证模块120,还用于响应于所述审核信息,根据所述审核信息中的若干预设键值对对所述配置文件中的键值对进行验证。

示例性的,键值对验证模块120还包括键值对遍历子模块、键值对匹配子模块、非法键值对确定子模块。

键值对遍历子模块,用于遍历所述配置文件中的所有键值对。

键值对匹配子模块,用于根根据遍历得到的键值对与所述预设键值对逐一进行匹配。

非法键值对确定子模块,用于根据匹配结果判断所述键值对是否存在非法键值对。

需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块、单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本申请的方法,可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

示例性地,上述的方法、装置可以实现为一种计算机程序的形式,该计算机程序可以在如图4所示的计算机设备上运行。

请参阅图4,图4为本申请实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以为服务器或终端。

如图4所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括存储介质和内存储器。

存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种配置文件的校验方法。

处理器用于提供计算和控制能力,支撑整个计算机设备的运行。

内存储器为存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种配置文件的校验方法。

该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:

获取应用程序的配置文件,所述配置文件包括多个键值对;

对所述配置文件中的所有键值对进行验证,判断所述配置文件中是否存在非法键值对;

若判定所述配置文件中不存在所述非法键值对,获取运行所述配置文件所需的至少两个预设运行环境;

在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能;

根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息;

根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求。

在一个实施例中,所述处理器在实现配置文件的校验方法时,用于实现:

根据所述配置项对应的键值对,将多个所述配置项进行分组,确定各所述配置项的配置项组别;

所述处理器在实现在每个预设运行环境中运行所述配置文件,得到与各所述预设运行环境对应的配置文件运行性能时,用于实现:

在每个预设运行环境中运行所述配置文件,得到每个所述配置项组别在各所述预设运行环境下的运行性能。

在一个实施例中,所述处理器在实现在每个预设运行环境中运行所述配置文件,得到每个所述配置项组别在各所述预设运行环境下的运行性能时,用于实现:

在每个预设运行环境中运行所述配置文件,得到每个所述配置项的运行性能;

基于每个所述配置项组别对应的性能确定算法,根据每个所述配置项组别中配置项的运行性能,确定每个所述配置项组别在各所述预设运行环境下的运行性能。

在一个实施例中,所述处理器在实现根据各所述预设运行环境对应的配置文件运行性能,确定所述配置文件在不同预设运行环境下的性能差异信息时,用于实现:

根据每个所述配置项组别在各所述预设运行环境下的运行性能,确定每个所述配置项组别的性能差异信息;

所述处理器在实现根据所述性能差异信息确定所述配置文件是否符合所述应用程序的使用要求时,用于实现:

若每个所述配置项组别的性能差异信息均小于每个所述配置项组别对应的预设差异阈值,确定所述配置文件符合所述应用程序的使用要求。

在一个实施例中,所述处理器在实现配置文件的校验方法时,用于实现:

根据所述配置项组别对应的性能差异信息,判断所述配置项组别是否通过性能校验;

若所述配置项组别没有通过所述性能校验,调整所述配置项组别中至少一个配置项。

在一个实施例中,所述处理器在实现对所述配置文件中的所有键值对进行验证时,用于实现:

获取审核信息,所述审核信息包括审核通过的若干预设键值对;

响应于所述审核信息,根据所述审核信息中的若干预设键值对对所述配置文件中的键值对进行验证。

在一个实施例中,所述处理器在实现根据所述审核信息中的若干预设键值对对所述配置文件中的键值对进行验证时,用于实现:

遍历所述配置文件中的所有键值对;

根据遍历得到的键值对与所述预设键值对逐一进行匹配;

根据匹配结果判断所述键值对是否存在非法键值对。

需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述配置文件的校验的具体工作过程,可以参考前述配置文件的校验控制方法实施例中的对应过程,在此不再赘述。

本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序中包括程序指令,所述程序指令被执行时所实现的方法可参照本申请配置文件的校验方法的各个实施例。

其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。

应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

19页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于Git的版本风险管理把控方法、系统及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!