任务处理方法、装置、电子设备和计算机可读介质制造方法及图纸

技术编号:22081310 阅读:25 留言:0更新日期:2019-09-12 16:07
本申请实施例公开了任务处理方法、装置、电子设备和计算机可读介质。该方法的实施例包括:接收包含多个任务阶段的代码集成任务;确定该代码集成任务中的第一任务阶段和第二任务阶段,其中,该第二任务阶段依赖该第一任务阶段产生的数据;通过所述代码持续集成工具分配执行器,使所分配的执行器执行所述第一任务阶段中的任务,并从所分配执行器中,确定第一执行器;响应于确定该第二任务阶段中的任务的数量小于或等于预设数量,使该第一执行器继续执行该第二任务阶段中的任务。该实施方式提高了代码集成任务的处理效率。

Task Processing, Devices, Electronic Equipment and Computer Readable Media

【技术实现步骤摘要】
任务处理方法、装置、电子设备和计算机可读介质
本申请实施例涉及计算机
,具体涉及任务处理方法、装置、电子设备和计算机可读介质。
技术介绍
持续集成(Continuousintegration,CI)是一种软件开发实践,即团队中每个开发成员每天至少进行一次代码集成任务。通常,可以在服务器中安装代码持续集成工具(例如GitLabCI),以进行代码持续集成。其中,上述代码持续集成工具可以管理多个执行器(GitLabCIRunner),上述服务器可称为GitLab服务器。在通过上述代码持续集成工具执行每一次代码集成任务的过程中,现有的任务处理流程,通常是为各阶段任务随机分配执行器,以依次执行各任务阶段中的任务(job)。每当一个任务阶段处理结束时,相应的执行器将数据上传至GitLab服务器。若当前任务阶段需要上一任务阶段所产生的数据,则需要当前任务阶段的执行器从GitLab服务器下载该数据。因而,这种方式需要在代码集成任务处理过程中进行多次网络传输,导致代码集成任务的处理效率较低。
技术实现思路
本申请实施例提出了任务处理方法、装置、电子设备和计算机可读介质,以解决现有技术中代码集成任务的本文档来自技高网...

【技术保护点】
1.一种任务处理方法,其特征在于,应用于安装有代码持续集成工具的服务器,所述代码持续集成工具管理有多个用于执行任务的执行器,所述方法包括:接收包含多个任务阶段的代码集成任务;确定所述代码集成任务中的第一任务阶段和第二任务阶段,其中,所述第二任务阶段依赖所述第一任务阶段产生的数据;通过所述代码持续集成工具分配执行器,使所分配的执行器执行所述第一任务阶段中的任务,并从所分配执行器中,确定第一执行器;响应于确定所述第二任务阶段中的任务的数量小于或等于预设数量,使所述第一执行器继续执行所述第二任务阶段中的任务。

【技术特征摘要】
1.一种任务处理方法,其特征在于,应用于安装有代码持续集成工具的服务器,所述代码持续集成工具管理有多个用于执行任务的执行器,所述方法包括:接收包含多个任务阶段的代码集成任务;确定所述代码集成任务中的第一任务阶段和第二任务阶段,其中,所述第二任务阶段依赖所述第一任务阶段产生的数据;通过所述代码持续集成工具分配执行器,使所分配的执行器执行所述第一任务阶段中的任务,并从所分配执行器中,确定第一执行器;响应于确定所述第二任务阶段中的任务的数量小于或等于预设数量,使所述第一执行器继续执行所述第二任务阶段中的任务。2.根据权利要求1所述的任务处理方法,其特征在于,在所述并从所分配执行器中,确定第一执行器之后,所述方法还包括:响应于确定所述第二任务阶段中的任务的数量大于所述预设数量,通过所述管理工具选取第二执行器,使所述第一执行器和第二执行器执行所述第二任务阶段中的任务,其中,在所述第二任务阶段中,由所述第一执行器执行的任务的数量为所述预设数量。3.根据权利要求2所述的任务处理方法,其特征在于,所述通过所述管理工具选取第二执行器,使所述第一执行器和第二执行器执行所述第二任务阶段中的任务,包括:通过所述管理工具随机选取空闲状态的执行器,作为第二执行器;从所述第二任务阶段中选取所述预设数量的任务,使所述第一执行器执行所选取的任务,并使所述第二执行器执行如下步骤:通过远程文件拷贝命令,从执行所述第一任务阶段的任务的执行器中获取数据;基于所获取的数据,执行所述第二任务阶段中的其余任务。4.根据权利要求1所述的任务处理方法,其特征在于,所述确定所述代码集成任务中的第一任务阶段和第二任务阶段,包括:确定所述代码集成任务中的任务阶段之间的依赖关系;对于所述代码集成任务中的每个任务阶段,执行如下步骤:基于所述依赖关系,确定该任务阶段是否产生所述代码集成任务中的其余至少一个任务阶段所依赖的数据;若是,将该任务阶段确定为第一任务阶段,并将依赖所述第一任务阶段所产生的数据的任务阶段确定为第二任务阶段。5.根据权利要求1所述的任务处理方法,其特征在于,所述通过所述代码持续集成工具分配执行器,使所分配的执行器执行所述第一任务阶段中的任务,并从所分配执行器中,确定第一执行器,包括:响应于确定所述第一任务阶段中的任务的数量小于或等于所述预设数量,通过所述代码持续集成工具分配一个执行器作为第一执行器,使所述第一执行器执行所述第一任务阶段中的任务。6.根据权利要求1所述的任务处理方法,其特征在于,所述通过所述代码持续集成工具分配执行器,使所分配的执行器执行所述第一任务阶段中的任务,并从所分配执行器中,确定第一执行器,包括:响应于确定所述第一任务阶段中的任务的数量大于所述预设数量,通过所述代码持续集成工具分配至少两个执行器,使所述至少两个执行器执行所述第一任务阶段中的任务;分别确定各执行器在执行第一任务阶段中的任务时所产生的数据量,将产生最多数据量的执行器确定为第一执行器。7.一种任务处理装置,其特征在于,应用于安装有代码持续集成工具的...

【专利技术属性】
技术研发人员:汪鑫
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1