CN111666213A - 任务上线的方法、装置、计算机设备及存储介质 - Google Patents
任务上线的方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111666213A CN111666213A CN202010471354.XA CN202010471354A CN111666213A CN 111666213 A CN111666213 A CN 111666213A CN 202010471354 A CN202010471354 A CN 202010471354A CN 111666213 A CN111666213 A CN 111666213A
- Authority
- CN
- China
- Prior art keywords
- release
- drilling
- production
- test
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种任务上线的方法,所述方法包括:获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。通过上述方法,可以实现直接部署、及时发现并高效解决每个部署阶段存在的问题且整体需求上线时间更短。此外,还提出了一种任务上线的装置、计算机设备及存储介质。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务上线的方法、装置、计算机设备及存储介质。
背景技术
大数据任务上线时,移交任务量大,每项任务都是根据发布顺序单向进行部署的,版本部署依赖科技的部署组,部署过程中单个任务的操作信息无法准确跟踪,通常要反复部署才能成功,效率低且准确度不高;无法实时部署,所以无法及时发现和处理部署时存在的问题;版本测试时,因测试环境与实际生产环境不同,导致各种生产问题。通常都是在部署生产时才能发现存在问题,引发各种生产问题,且只能通过重新进入部署流程才能实现修复,发版周期长,人力投入多,影响需求上线完成时间,导致大数据任务上线的效率低下。
发明内容
基于此,本发明提出了一种可以实现直接部署、及时发现并高效解决每个部署阶段存在的问题且整体需求上线时间更短的任务上线方法、装置、计算机设备及存储介质。
一种任务上线的方法,所述方法包括:
获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;
对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;
当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;
当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;
当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
在其中一个实施例中,所述方法还包括:当所述测试发布状态不符合测试要求、或所述演练发布状态不符合演练要求、或所述生产发布状态不符合生产要求时,确定所述目标任务上线失败;当所述目标任务上线失败时,重新进入获取所述目标任务对应的目标代码的步骤。
在其中一个实施例中,所述实时部署所述目标任务,包括:获取所述任务的参数信息,获取部署接口对应的接口要求;根据所述接口要求,拼接所述参数信息;根据拼接的参数信息调用所述部署接口,实时部署所述目标任务。
在其中一个实施例中,所述对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取所述目标代码对应的演练环境;根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态。
在其中一个实施例中,所述根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取预设时间段;根据所述演练环境,在所述预设时间段内对所述目标代码进行循环演练发布;获取最后一次演练发布对应的演练发布状态,将所述最后一次演练发布对应的演练发布状态作为所述目标任务对应的演练发布状态。
在其中一个实施例中,所述测试发布状态包括:测试发布成功和测试发布失败;所述演练发布状态包括:演练发布成功和演练发布失败;所述生产发布状态包括:生产发布成功和生产发布失败。
在其中一个实施例中,所述测试发布状态、所述演练发布状态和所述生产发布状态采用以下步骤得到:根据对所述目标任务进行的实时部署,建立部署日志;根据所述部署日志记录所述测试发布对应的测试发布日志信息,根据所述部署日志记录所述演练发布对应的演练发布日志信息,根据所述部署日志记录所述生产发布对应的生产发布日志信息;根据所述测试发布日志信息得到所述测试发布状态,根据所述演练发布日志信息得到所述演练发布状态,根据所述生产发布日志信息得到所述生产发布状态。
第二方面,本发明实施例提出了一种任务上线的装置,所述装置包括:
获取模块,用于获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;
测试模块,用于对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;
演练模块,用于当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;
生产模块,用于当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;
确定模块,用于当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
第三方面,本发明实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;
对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;
当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;
当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;
当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
第四方面,本发明实施例提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;
对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;
当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;
当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;
当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
上述任务上线的方法、装置、计算机设备及存储介质,通过获取目标任务对应的目标代码,然后对目标代码依次进行测试发布、演练发布、生产发布,前一步操作无问题后,才能进行到下一步操作,避免了测试不通过就上生产等低级错误,由此可以确定目标任务上线成功,从而可以实现直接部署、及时发现并高效解决每个部署阶段存在的问题且整体需求上线时间更短。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为一个实施例中任务上线的方法的流程图;
图2为一个实施例中实时部署目标任务的流程图;
图3为一个实施例中根据演练环境对目标代码进行演练发布的流程图;
图4为一个实施例中任务上线的装置的结构框图;
图5为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,提出了一种任务上线的方法,该任务上线的方法可以应用于终端,本实施例以应用于终端举例说明。该任务上线的方法具体包括以下步骤:
步骤102,获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码。
其中,目标任务是指需要上线的大数据任务,例如产险任务;目标代码是指目标任务对应的用开发工具所支持的语言写出来的源文件。目标代码可以根据用户需求得到。每个目标任务对应的代码框架不同,需要分别获取每个目标任务对应的代码。在一个实施例中,目标任务可以是产险任务,目标任务对应的目标代码可以是产险任务代码,可以获取上述产险任务,实时部署上述产险任务,例如,可以是由***后台直接调用关联***的部署接口,***拼接生成部署参数,从而可以支持实时部署产险任务。可以是获取产险任务对应的产险任务代码。
步骤104,对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态。
其中,测试发布是指在测试环境里对目标代码进行的功能性测试;测试发布状态是指目标代码进行测试发布后所得到的部署状态字段,例如,测试发布成功和测试发布失败。为实现目标任务的上线,首先可以将获取的目标代码移交至***部署进行测试发布。可以在测试发布过程中发现目标代码中存在的问题,为确定测试过程是否存在并及时解决上述问题,可以在测试结束后获取测试发布状态。在一个实施例中,假设目标代码为产险任务代码,可以在测试环境中对产险任务代码进行测试发布,测试环境可以根据需求搭建,例如,为实现***直接部署,可以在***中部署测试组支持测试,上述产险任务代码可以由测试组进行功能性的自助测试,从而可以在测试发布过程中及时发现产险任务代码的大部分问题。通过测试组对产险任务代码进行测试发布后,可以得到产险任务(即目标任务)对应的测试发布状态,例如,可以是得到测试发布成功的测试发布状态,也可以是得到测试发布失败的测试发布状态。
步骤106,当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态。
其中,测试要求是指确定测试发布状态是否合格的具体要求;演练发布是指在演练环境里对目标代码进行的仿真测试;演练发布状态是指指目标代码进行演练发布后所得到的部署状态字段,例如,演练发布成功和演练发布失败。可以根据测试发布状态实现对部署流程进行权限控制,例如,可以根据测试发布状态判断目标任务是否通过测试发布,仅在目标任务通过测试发布时,才可以对目标任务进行下一步部署操作。当测试发布状态符合测试要求时,可以确定测试发布过程中未检测到目标代码存在问题,即可以确定目标代码的测试发布正常通过。然而为了避免测试环境和生产环境不一致引发的测试正常通过、但生产却出异常的情况,当目标代码的测试发布正常通过时,可以引入演练环境对目标代码进行演练发布,进一步检测目标代码是否存在问题。
在一个实施例中,目标任务可以是产险任务,目标代码可以是产险任务代码,假设当产险任务代码的测试状态为测试成功时,可以确定产险任务对应的测试发布状态符合测试要求,即产险任务代码测试发布正常通过。当产险任务代码测试发布正常通过时,可以引入演练环境对产险任务代码进行演练发布。为实现直接部署,可以在***中部署开发支持演练发布。引入的演练环境可以是仿真的内测环境,演练环境中的机器和环境跟生产环境一样,但与生产环境隔离开来。可以根据演练环境对产险任务进行演练发布,从而模拟测试所有生产功能的可用性。为确定产险任务在演练环境中进行演练发布的过程中是否存在问题,对产险任务代码进行演练发布后,可以得到产险任务对应的演练发布状态,例如,可以是得到演练发布成功的演练发布状态,也可以是得到演练发布失败的演练发布状态。
步骤108,当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态。
其中,演练要求是指确定演练发布状态是否合格的具体要求;生产发布是指在生产环境里对目标代码进行的仿真测试;生产发布状态是指指目标代码进行生产发布后所得到的部署状态字段,例如,生产发布成功和生产发布失败。可以根据演练发布状态实现对部署流程进行权限控制,例如,可以根据演练发布状态判断目标任务是否通过演练发布,仅在目标任务通过演练发布时,才可以对目标任务进行下一步部署操作。当演练发布状态符合测试要求时,可以确定演练发布过程中未检测到异常,即可以确定目标代码的演练正常通过。可以在演练发布状态符合演练要求后再对目标代码进行生产部署,可以是进入生产环境进行生产发布。
在一个实施例中,目标任务可以是产险任务,目标代码可以是产险任务代码,假设当产险任务代码的演练状态为演练成功时,产险任务对应的演练发布状态符合演练要求,即产险任务代码发布正常通过。当产险任务代码演练正常通过时,可以是在进入生产环境前,由运维和开发判断后,再根据生产环境对产险任务代码进行生产发布。为实现直接部署,可以在***中部署运维操作支持生产发布。为确定产险任务在生产环境中进行生产发布时是否存在问题,可以对产险任务代码进行生产发布后,得到产险任务对应的生产发布状态,例如,可以是得到生产发布成功的生产发布状态,也可以是得到生产发布失败的生产发布状态。
步骤110,当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
其中,生产要求是指确定生产发布状态是否合格的具体要求。当生产发布状态符合生产要求时,可以确定目标任务对应的目标代码通过生产测试,且不存在生产问题,所以可以确定目标任务上线成功。在一个实施例中,假设当生产发布状态为生产发布成功时,生产发布状态符合生产要求。当生产发布状态符合生产要求时,可以确定目标任务生产正常运行,例如,当产险任务对应的生产发布状态为生产发布成功时,可以确定产险任务代码在生产环境中运行成功,所以产险任务不存在生产问题,即可确定产险任务上线成功。
上述任务上线的方法,通过获取目标任务对应的目标代码,然后对目标代码依次进行测试发布、演练发布、生产发布,前一步操作无问题后,才能进行到下一步操作,避免了测试不通过就上生产等低级错误,由此可以确定目标任务上线成功,从而可以实现直接部署、及时发现并高效解决每个部署阶段存在的问题且整体需求上线时间更短。
在一个实施例中,所述方法还包括:
当所述测试发布状态不符合测试要求、或所述演练发布状态不符合演练要求、或所述生产发布状态不符合生产要求时,确定所述目标任务上线失败。
其中,测试发布状态不符合测试要求是指测试发布状态不合格;演练发布状态不符合演练要求是指演练发布状态不合格;生产发布状态不符合生产要求是指生产发布状态不合格。因当且仅当目标代码通过每项发布测试时,才能确定目标任务上线成功,而测试发布状态不符合测试要求、或演练发布状态不符合演练要求、或生产发布不符合生产要求时,可以确定目标任务对应的目标代码未通过测试发布、或未通过演练发布、或未通过生产发布,从而可以确定未通过测试发布、或演练发布、或生产发布的目标任务上线失败。在一个实施例中,假设当演练发布状态为演练发布失败时,演练发布失败的演练发布状态不符合演练要求,则目标任务对应的目标代码未通过演练发布,所以可以确定未通过演练发布的目标任务上线失败。
当所述目标任务上线失败时,重新进入获取所述目标任务对应的目标代码的步骤。
因目标任务上线失败,所以可以确定目标任务对应的目标代码中存在错误参数,为实现目标任务的上线,可以是对错误参数进行针对性的修改,即重新进入获取所述目标任务对应的目标代码的步骤,可以根据修改后的目标代码可以重新按流程部署,直至目标任务上线成功。
在一个实施例中,假设目标任务为产险任务,假设产险任务对应的目标代码为产险任务代码,假设产险任务代码的测试发布状态为测试发布失败。当产险任务代码测试发布失败时,可以确定产险任务的测试发布状态不符合测试要求,且产险任务未通过测试发布,可以重新进入获取产险任务代码的步骤,即重新修改代码,再按流程部署,直至测试发布成功;当且仅当产险任务代码测试发布成功时,产险任务代码无误,即可进入演练发布的步骤。即,重新进入获取产险任务代码的步骤,可以将不符合测试要求的“测试发布失败”的部署状态字段翻转为符合测试要求的“测试发布成功”的部署状态字段,从而可以保证产险任务在测试发布验证通过后再进入下一个部署步骤,即测试发布成功后才能进入演练发布步骤,从而可以实现对产险任务的部署流程的权限监控。
在另一个实施例中,假设目标任务为产险任务,假设产险任务对应的目标代码为产险任务代码,假设产险任务代码的生产发布状态为生产发布失败。当产险任务代码生产发布失败时,可以确定产险任务的生产发布状态不符合生产要求,且产险任务未通过生产发布,可以重新进入获取产险任务代码的步骤,即重新修改产险任务的任务参数,再次触发部署,直至生产发布成功。可以实现将不符合生产要求的“生产发布失败”的部署状态字段翻转为符合生产要求的“生产发布成功”的部署状态字段,从而可以避免因部署问题导致的生产故障,确保产险任务成功上线。通过对目标任务的部署状态判断,当部署状态字段不符合对应的要求时,可以对部署状态字段进行翻转,例如当部署状态字段为测试发布失败时,部署状态字段不符合对应的测试要求,则需重新进入获取目标任务对应的目标代码的步骤,直至部署状态字段为测试发布成功,从而可以实现部署字段的翻转,因此可以及时发现并解决目标任务上线过程中存在的问题,无需再频繁移交部署修复生产问题;根据修改后的目标代码再次触发部署,可以实现目标任务成功上线,缩短目标任务上线时间。
如图2所示,在一个实施例中,所述实时部署所述目标任务,包括:
步骤202,获取所述目标任务的参数信息,获取部署接口对应的接口要求。
其中,参数信息是指目标任务中需要部署的可供参考的信息;部署接口是指部署目标任务时关联***的接口;接口要求是指部署接口的具体要求。为实现直接、实时部署目标任务,可以是直接调用关联***的部署接口,按照接口要求与***拼接生成部署参数,从而可以支持直接、实时部署。在一个实施例中,可以是由***获取需部署的目标任务对应的可参考信息,即获取参数信息。可以是直接调用关联***linkdo的部署接口,接口要求可以是关联***linkdo接口要求,可以获取上述参数信息及接口要求。
步骤204,根据所述接口要求,拼接所述参数信息。
在一个实施例中,可以根据接口要求拼接目标任务的参数信息,例如,假设接口要求是关联***linkdo接口要求,可以根据关联***的linkdo接口要求与***拼接好参数信息,可以是根据关联***的linkdo接口要求自动拼接参数信息。可以根据拼接好的参数信息调用部署接口。
步骤206,根据拼接的参数信息调用所述部署接口,实时部署所述目标任务。
为实现实时部署目标任务,可以是由***直接调用关联***的部署接口,***拼接生成部署参数,然后调度部署接口,从而可以支持直接、实时部署目标任务。在一个实施例中,可以是按关联***linkdo接口要求,拼接好参数,然后调度linkdo部署接口,实现直接部署任务。对目标任务的部署操作可以通过调度Java接口实现。例如,部署操作可以是测试发布、演练发布和生产发布,部署操作可以通过调度Java接口实现测试直接负责测试发布,开发直接负责直接演练发布,运维直接负责生产发布。根据接口要求拼接目标任务的参数信息,然后根据拼接好的参数信息直接调度部署接口,可以实现实时、直接部署目标任务,可以实现全流程自助部署,操作简单,无需依赖专门的科技部署组,从而使得目标任务上线的周期更短。
在一个实施例中,所述对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:
步骤1,获取所述目标代码对应的演练环境。
其中,演练环境是指仿真的内测环境。演练环境中的机器和环境跟生产环境一样,但与生产环境隔离开来;演练环境可以跟一般的灰度环境类似,但普通的灰度环境无法模拟测试所有生产功能的可用性。为消除测试环境和生产环境不一致引发的测试发布正常通过但实际生产过程中却出异常的情况,可以引入演练环境对目标代码进行演练发布,从而可以保证其生产功能都能测试通过。在一个实施例中,可以是获取目标代码对应的演练环境,可以根据演练环境对目标代码进行演练发布。
步骤2,根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态。
在一个实施例中,可以是根据演练环境对目标代码进行演练发布,得到目标任务对应的演练发布状态。例如,可以根据演练环境度目标代码进行试运行,根据试运行结果可以得到目标任务对应的演练发布状态:当目标代码在演练环境中试运行通过时,可以得到目标任务对应的演练发布状态为演练发布成功;当目标代码在演练环境中试运行未通过时,可以确定目标代码的试运行存在问题,可以得到目标任务对应的演练发布状态为演练发布失败。通过引入演练环境对目标代码进行演练发布,试运行后可以得到目标任务对应的演练发布状态,可以保证生产功能都测试通过,消除版本导致的生产异常。新增演练环境对目标任务进行仿真的内部测试,可以消除因版本差异导致的生产异常,且无需再频繁移交部署修复生产问题,提高了目标任务上线的效率,目标任务上线的整体时间短,省时省力
如图3所示,在一个实施例中,所述根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:
步骤302,获取预设时间段。
其中,预设时间段是指预先设置的目标代码的试运行时间间隔。由于目标任务的移交量较大,为消除目标任务在演练环境中产生的试运行误差,可以将目标任务在演练环境中试运行一段时间,例如,可以在预设时间段内在演练环境中对目标任务进行试运行,以便观察可能存在的试运行问题。在一个实施例中,假设预设时间段为2天,可以获取该预设时间段。
步骤304,根据所述演练环境,在所述预设时间段内对所述目标代码进行循环演练发布。
其中,循环演练发布是指循环运行目标任务。由于目标任务是大数据任务,仅数次试运行可能会存在检测疏漏,所以可以是对目标任务对应的目标代码进行若干次循环演练发布,最大程度地消除可能存在的试运行问题。在一个实施例中,可以是在预设时间段内,根据演练环境对目标代码进行循环演练发布。例如,假设预设时间段为3天,可以将目标代码在演练环境中试运行3天,在此期间可以是每天循环运行目标任务,观察目标代码在演练环境中的试运行结果。
步骤306,获取最后一次演练发布对应的演练发布状态,将所述最后一次演练发布对应的演练发布状态作为所述目标任务对应的演练发布状态。
其中,最后一次演练发布对应的演练发布状态,是指循环演练发布过程中的最后一次对目标代码进行试运行所得到的部署状态字段。在一个实施例中,可以将循环演练发布中最后一次的演练发布对应的演练发布状态作为目标任务对应的演练发布状态。例如,假设最后一次演练发布对应的演练发布状态为演练发布成功,则可以将演练发布成功作为目标任务对应的演练发布状态;假设最后一次演练发布对应的演练发布状态为演练发布失败,则可以将演练发布失败作为目标任务对应的演练发布状态。根据演练环境可以在预设时间段内对目标代码进行循环演练发布,可以消除目标任务在演练环境中试运行时产生的试运行误差,将最后一次演练发布对应的演练发布状态作为目标任务对应的演练发布状态,可以保证所得的演练发布状态的准确性。
在一个实施例中,所述测试发布状态包括:测试发布成功和测试发布失败。其中,测试发布成功是指目标代码进行测试发布后所得的成功的部署状态字段;测试发布失败是指目标代码进行测试发布后所得的失败的部署状态字段。测试发布成功可以表示目标代码通过测试发布的测试,且不存在问题;测试发布失败可以表示目标代码未通过测试发布的测试,目标代码中可能存在错误参数。测试发布状态可以包括测试发布成功和测试发布失败,也可以是其他部署状态字段,例如,可以是测试发布正常和测试发布异常。
所述演练发布状态包括:演练发布成功和演练发布失败。
其中,演练发布成功是指目标代码进行演练发布后所得的成功的部署状态字段;演练发布失败是指目标代码进行演练发布后所得的失败的部署状态字段。演练发布成功可以表示目标代码通过演练发布的试运行,且试运行过程中不存在运行问题;演练发布失败可以表示目标代码未通过演练发布的试运行,试运行过程中存在运行问题。演练发布状态可以包括演练发布成功和演练发布失败,也可以是其他部署状态字段,例如,可以是演练发布通过和演练发布未通过。
所述生产发布状态包括:生产发布成功和生产发布失败。
其中,生产发布成功是指目标代码进行生产发布后所得的成功的部署状态字段;生产发布失败是指目标代码进行生产发布后所得的失败的部署状态字段。生产发布成功可以表示目标代码通过生产发布的测试,且不存在生产问题;生产发布失败可以表示目标代码未通过生产发布的测试,存在生产问题。生产发布状态可以包括生产发布成功和生产发布失败,也可以是其他部署状态字段,例如,可以是生产正常运行和生产异常运行。根据测试发布状态、演练发布状态和生产发布状态,可以对测试发布、演练发布和生产发布进行状态判断,从而可以确定目标任务的部署操作是否存在问题,从而可以及时解决部署问题。
在一个实施例中,所述测试发布状态、所述演练发布状态和所述生产发布状态采用以下步骤得到:
步骤1,根据对所述目标任务进行的实时部署,建立部署日志。
其中,部署日志是指目标任务上线过程对应的详细日志信息。由于目标任务的移交任务量大,且部署过程中部署日志定位问题原因耗时、复杂或无日志记录,导致需要反复移交修复部署才能上线成功,所以可以根据对目标任务进行的实时部署,建立部署日志,从而可以详细记录目标任务部署的日志信息。在一个实施例中,可以由***详细记录目标任务在上线过程中的每步骤每个任务的详细操作信息,操作信息可以包括报错信息,可以根据实时部署时记录的操作信息建立部署日志。
步骤2,根据所述部署日志记录所述测试发布对应的测试发布日志信息,根据所述部署日志记录所述演练发布对应的演练发布日志信息,根据所述部署日志记录所述生产发布对应的生产发布日志信息。
其中,测试发布日志信息是指对目标任务对应的目标代码进行测试发布时记录的详细操作信息;演练发布日志信息是指对目标代码进行演练发布时记录的详细操作信息;生产发布日志信息是指对目标代码进行生产发布时记录的详细操作信息。由于部署日志可以记录目标任务上线过程中的详细操作信息,所以可以分别得到测试发布对应的测试发布日志信息、演练发布对应的演练发布日志信息和生产发布对应的生产发布信息。在一个实施例中,假设目标任务为产险任务,则可以根据产险任务对应的部署日志,分别得到对产险任务进行测试发布时的测试发布日志信息、对产险任务进行演练发布时的演练发布日志信息和对产险任务进行生产发布时的生产发布日志信息。
步骤3,根据所述测试发布日志信息得到所述测试发布状态,根据所述演练发布日志信息得到所述演练发布状态,根据所述生产发布日志信息得到所述生产发布状态。
由于测试发布日志信息是对目标任务对应的目标代码进行测试发布时记录的详细操作信息,所以可以从测试发布信息中得到测试发布状态;同理,演练发布日志信息是对目标任务对应的目标代码进行演练发布时记录的详细操作信息,所以可以从演练发布信息中得到演练发布状态;且生产发布日志信息是对目标任务对应的目标代码进行生产发布时记录的详细操作信息,所以也可以从生产发布信息中得到生产发布状态。在一个实施例中,假设从测试发布日志信息中得到测试发布失败的操作信息,则可以得到测试发布状态为测试发布失败;又设从生产发布日志信息中得到生产发布成功的操作信息,则可以得到生产发布状态为生产发布成功。通过建立部署日志,可以对目标任务的上线过程中的操作信息进行统筹;可以根据部署日志跟踪查询得到测试发布状态、演练发布状态和生产发布状态,方便定位部署过程中产生的问题能及时修复,从而可以支持多个条件维度快速查询和显示单个产险任务的报错信息,且支持查询产险任务的历史版本信息。
如图4所示,本发明实施例提供了一种任务上线的装置,所述装置包括:
获取模块402,用于获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;
测试模块404,用于对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;
演练模块406,用于当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;
生产模块408,用于当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;
确定模块410,用于当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
在一个实施例中,当所述测试发布状态不符合测试要求、或所述演练发布状态不符合演练要求、或所述生产发布状态不符合生产要求时,确定模块410还用于确定所述目标任务上线失败;获取模块402还用于当所述目标任务上线失败时,重新进入获取所述目标任务对应的目标代码的步骤。
在一个实施例中,所述实时部署所述目标任务,包括:获取模块402还用于获取所述目标任务的参数信息,获取部署接口对应的接口要求;获取模块402还用于根据所述接口要求,拼接所述参数信息;根据拼接的参数信息调用所述部署接口,实时部署所述目标任务。
在一个实施例中,所述对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取模块402还用于获取所述目标代码对应的演练环境;演练模块404还用于根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态。
在一个实施例中,所述根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取模块402还用于获取预设时间段;演练模块406还用于根据所述演练环境,在所述预设时间段内对所述目标代码进行循环演练发布;确定模块410还用于获取最后一次演练发布对应的演练发布状态,将所述最后一次演练发布对应的演练发布状态作为所述目标任务对应的演练发布状态。
在一个实施例中,所述测试发布状态包括:测试发布成功和测试发布失败;所述演练发布状态包括:演练发布成功和演练发布失败;所述生产发布状态包括:生产发布成功和生产发布失败。
在一个实施例中,所述测试发布状态、所述演练发布状态和所述生产发布状态采用以下步骤得到:获取模块402还用于根据对所述目标任务进行的实时部署,建立部署日志;根据所述部署日志记录所述测试发布对应的测试发布日志信息,根据所述部署日志记录所述演练发布对应的演练发布日志信息,根据所述部署日志记录所述生产发布对应的生产发布日志信息;获取模块402还用于根据所述测试发布日志信息得到所述测试发布状态,根据所述演练发布日志信息得到所述演练发布状态,根据所述生产发布日志信息得到所述生产发布状态。
图5示出了一个实施例中计算机设备的内部结构图。该计算机设备可以是终端。如图5所示,该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作***,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现任务上线的方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行任务上线的方法。网络接口用于与外界进行通信。本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的任务上线的方法可以实现为一种计算机程序的形式,计算机程序可在如图5所示的计算机设备上运行。计算机设备的存储器中可存储组成该任务上线的装置的各个程序模板。比如,获取模块402,测试模块404,演练模块406,生产模块408,确定模块410。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
在一个实施例中,所述方法还包括:当所述测试发布状态不符合测试要求、或所述演练发布状态不符合演练要求、或所述生产发布状态不符合生产要求时,确定所述目标任务上线失败;当所述目标任务上线失败时,重新进入获取所述目标任务对应的目标代码的步骤。
在一个实施例中,所述实时部署所述目标任务,包括:获取所述任务的参数信息,获取部署接口对应的接口要求;根据所述接口要求,拼接所述参数信息;根据拼接的参数信息调用所述部署接口,实时部署所述目标任务。
在一个实施例中,所述对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取所述目标代码对应的演练环境;根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态。
在一个实施例中,所述根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取预设时间段;根据所述演练环境,在所述预设时间段内对所述目标代码进行循环演练发布;获取最后一次演练发布对应的演练发布状态,将所述最后一次演练发布对应的演练发布状态作为所述目标任务对应的演练发布状态。
在一个实施例中,所述测试发布状态包括:测试发布成功和测试发布失败;所述演练发布状态包括:演练发布成功和演练发布失败;所述生产发布状态包括:生产发布成功和生产发布失败。
在一个实施例中,所述测试发布状态、所述演练发布状态和所述生产发布状态采用以下步骤得到:根据对所述目标任务进行的实时部署,建立部署日志;根据所述部署日志记录所述测试发布对应的测试发布日志信息,根据所述部署日志记录所述演练发布对应的演练发布日志信息,根据所述部署日志记录所述生产发布对应的生产发布日志信息;根据所述测试发布日志信息得到所述测试发布状态,根据所述演练发布日志信息得到所述演练发布状态,根据所述生产发布日志信息得到所述生产发布状态。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
在一个实施例中,所述方法还包括:当所述测试发布状态不符合测试要求、或所述演练发布状态不符合演练要求、或所述生产发布状态不符合生产要求时,确定所述目标任务上线失败;当所述目标任务上线失败时,重新进入获取所述目标任务对应的目标代码的步骤。
在一个实施例中,所述实时部署所述目标任务,包括:获取所述任务的参数信息,获取部署接口对应的接口要求;根据所述接口要求,拼接所述参数信息;根据拼接的参数信息调用所述部署接口,实时部署所述目标任务。
在一个实施例中,所述对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取所述目标代码对应的演练环境;根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态。
在一个实施例中,所述根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:获取预设时间段;根据所述演练环境,在所述预设时间段内对所述目标代码进行循环演练发布;获取最后一次演练发布对应的演练发布状态,将所述最后一次演练发布对应的演练发布状态作为所述目标任务对应的演练发布状态。
在一个实施例中,所述测试发布状态包括:测试发布成功和测试发布失败;所述演练发布状态包括:演练发布成功和演练发布失败;所述生产发布状态包括:生产发布成功和生产发布失败。
在一个实施例中,所述测试发布状态、所述演练发布状态和所述生产发布状态采用以下步骤得到:根据对所述目标任务进行的实时部署,建立部署日志;根据所述部署日志记录所述测试发布对应的测试发布日志信息,根据所述部署日志记录所述演练发布对应的演练发布日志信息,根据所述部署日志记录所述生产发布对应的生产发布日志信息;根据所述测试发布日志信息得到所述测试发布状态,根据所述演练发布日志信息得到所述演练发布状态,根据所述生产发布日志信息得到所述生产发布状态。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种任务上线的方法,其特征在于,所述方法包括:
获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;
对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;
当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;
当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;
当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述测试发布状态不符合测试要求、或所述演练发布状态不符合演练要求、或所述生产发布状态不符合生产要求时,确定所述目标任务上线失败;
当所述目标任务上线失败时,重新进入获取所述目标任务对应的目标代码的步骤。
3.根据权利要求1所述的方法,其特征在于,所述实时部署所述目标任务,包括:
获取所述目标任务的参数信息,获取部署接口对应的接口要求;
根据所述接口要求,拼接所述参数信息;
根据拼接的参数信息调用所述部署接口,实时部署所述目标任务。
4.根据权利要求1所述的方法,其特征在于,所述对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:
获取所述目标代码对应的演练环境;
根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态。
5.根据权利要求4所述的方法,其特征在于,所述根据所述演练环境对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态,包括:
获取预设时间段;
根据所述演练环境,在所述预设时间段内对所述目标代码进行循环演练发布;
获取最后一次演练发布对应的演练发布状态,将所述最后一次演练发布对应的演练发布状态作为所述目标任务对应的演练发布状态。
6.根据权利要求1所述的方法,其特征在于,所述测试发布状态包括:测试发布成功和测试发布失败;
所述演练发布状态包括:演练发布成功和演练发布失败;
所述生产发布状态包括:生产发布成功和生产发布失败。
7.根据权利要求6所述的方法,其特征在于,所述测试发布状态、所述演练发布状态和所述生产发布状态采用以下步骤得到:
根据对所述目标任务进行的实时部署,建立部署日志;
根据所述部署日志记录所述测试发布对应的测试发布日志信息,根据所述部署日志记录所述演练发布对应的演练发布日志信息,根据所述部署日志记录所述生产发布对应的生产发布日志信息;
根据所述测试发布日志信息得到所述测试发布状态,根据所述演练发布日志信息得到所述演练发布状态,根据所述生产发布日志信息得到所述生产发布状态。
8.一种任务上线的装置,其特征在于,所述装置包括:
获取模块,用于获取目标任务,实时部署所述目标任务,获取所述目标任务对应的目标代码;
测试模块,用于对所述目标代码进行测试发布,得到所述目标任务对应的测试发布状态;
演练模块,用于当所述测试发布状态符合测试要求时,对所述目标代码进行演练发布,得到所述目标任务对应的演练发布状态;
生产模块,用于当所述演练发布状态符合演练要求时,对所述目标代码进行生产发布,得到所述目标任务对应的生产发布状态;
确定模块,用于当所述生产发布状态符合生产要求时,确定所述目标任务上线成功。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010471354.XA CN111666213A (zh) | 2020-05-29 | 2020-05-29 | 任务上线的方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010471354.XA CN111666213A (zh) | 2020-05-29 | 2020-05-29 | 任务上线的方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111666213A true CN111666213A (zh) | 2020-09-15 |
Family
ID=72385144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010471354.XA Pending CN111666213A (zh) | 2020-05-29 | 2020-05-29 | 任务上线的方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111666213A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741642A (zh) * | 2009-12-17 | 2010-06-16 | 北京航空航天大学 | 计算机网络攻防演练分布式仿真任务部署*** |
CN105045601A (zh) * | 2015-08-14 | 2015-11-11 | 广东能龙教育股份有限公司 | 一种基于云平台的产品发布及部署*** |
CN108845945A (zh) * | 2018-06-29 | 2018-11-20 | 口碑(上海)信息技术有限公司 | 应用测试优化方法及装置 |
CN109190975A (zh) * | 2018-08-31 | 2019-01-11 | 广州市世平计算机科技有限公司 | 一种基于o2o和ar/vr的安全素质测评方法及*** |
-
2020
- 2020-05-29 CN CN202010471354.XA patent/CN111666213A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741642A (zh) * | 2009-12-17 | 2010-06-16 | 北京航空航天大学 | 计算机网络攻防演练分布式仿真任务部署*** |
CN105045601A (zh) * | 2015-08-14 | 2015-11-11 | 广东能龙教育股份有限公司 | 一种基于云平台的产品发布及部署*** |
CN108845945A (zh) * | 2018-06-29 | 2018-11-20 | 口碑(上海)信息技术有限公司 | 应用测试优化方法及装置 |
CN109190975A (zh) * | 2018-08-31 | 2019-01-11 | 广州市世平计算机科技有限公司 | 一种基于o2o和ar/vr的安全素质测评方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109960643B (zh) | 一种代码测试方法和装置 | |
US7873944B2 (en) | System and method for maintaining and testing a software application | |
US9342441B2 (en) | Methodology and tool support for test organization and migration for embedded software | |
CN111258591B (zh) | 程序部署任务执行方法、装置、计算机设备和存储介质 | |
CN112433944A (zh) | 业务测试方法、装置、计算机设备和存储介质 | |
CN112395202B (zh) | 接口自动化测试方法、装置、计算机设备和存储介质 | |
KR102496539B1 (ko) | 소프트웨어 검증 방법 및 이를 위한 장치 | |
CN104021072A (zh) | 用于评估失效的软件程序的机器和方法 | |
CN111506509A (zh) | 汽车软件单元自动测试方法、装置、设备及存储介质 | |
CN110990289B (zh) | 一种自动提交bug的方法、装置、电子设备及存储介质 | |
CN108572892B (zh) | 一种基于PowerPC多核处理器的离线测试方法和装置 | |
CN113886262A (zh) | 软件自动化测试方法、装置、计算机设备和存储介质 | |
CN111240974A (zh) | 日志输出方法、装置、电子设备及介质 | |
US20190236223A1 (en) | Identification of changes in functional behavior and runtime behavior of a system during maintenance cycles | |
CN111767218B (zh) | 一种用于持续集成的自动化测试方法、设备及存储介质 | |
CN113127331B (zh) | 一种基于故障注入的测试方法、装置及计算机设备 | |
CN110309057B (zh) | 基于自动化脚本的流程性项目测试方法和相关设备 | |
CN111666213A (zh) | 任务上线的方法、装置、计算机设备及存储介质 | |
Paul | End-to-end integration testing | |
US11520691B2 (en) | Test procedure systems and methods | |
CN112783771A (zh) | 计算机软件的自动化测试方法、装置、设备以及存储介质 | |
CN114578210A (zh) | 一种主板测试方法、装置、设备及存储介质 | |
RU2817184C1 (ru) | Способ тестирования программного обеспечения встроенных систем управления | |
CN117632723B (zh) | 一种自动化模拟调测方法、***、设备及介质 | |
CN118069535A (zh) | 一种代码发布告警监控方法、***、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |