[发明专利]一种分布式编译系统和方法在审
申请号: | 202011025165.6 | 申请日: | 2020-09-25 |
公开(公告)号: | CN112114816A | 公开(公告)日: | 2020-12-22 |
发明(设计)人: | 胡登;张爽 | 申请(专利权)人: | 统信软件技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京瀚方律师事务所 11774 | 代理人: | 周红力 |
地址: | 100176 北京市大兴区经*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 编译 系统 方法 | ||
本发明公开了一种分布式编译系统和方法,分布式编译方法适于在分布式编译系统中运行,方法包括步骤:监控端监控源代码的更新事件,解析源代码的更新事件得到源代码的编译内容和编译信息,并发送至任务提交服务器;任务提交服务器接收监控端发送的编译内容和编译信息,将编译内容和编译信息进行组装生成编译任务,并发送至任务分发服务器;任务分发服务器接收任务分发服务器发送的编译任务,将编译任务匹配相应的编译端并进行分发;以及编译端接收任务分发器分发的编译任务进行执行。本发明还一并公开了一种计算设备和计算机可读存储介质。
技术领域
本发明涉及程序开发领域,特别涉及一种分布式编译系统和方法。
背景技术
在开发新程序和对程序进行更新升级时,将源代码文件转化为目标程序的编译过程是一项必不可少的工作。对源代码文件进行编译时,需要根据源代码文件所需的编译环境进行编译环境的搭建,同时源代码文件随着业务需求增加和开发版本的迭代也变得越来越大,编译的时间也越来越长。
因此,目前在程序开发过程中,在编译方面对计算机的性能要求也越来越高,需要在尽量短的时间范围内完成新代码的编译测试,尽快完成程序的上线。目前在对源代码文件进行编译时,编译的效率受到计算机计算能力的限制。每次在编译时,编译所需要的环境均需要重复地重新去构建,编译环境不能够进行共享和复用,每台计算机设备所能提供的编译架构也较为单一。
为此,需要一种新的编译系统和方法。
发明内容
为此,本发明提供一种分布式编译系统和方法,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供一种分布式编译系统,包括:多个监控端,监控端适于监控源代码的更新事件,解析源代码的更新事件得到源代码的编译内容和编译信息,并发送至任务提交服务器;任务提交服务器,任务提交服务器与多个监控端通信连接,适于接收监控端发送的编译内容和编译信息,将编译内容和编译信息进行组装生成编译任务,并发送至任务分发服务器;任务分发服务器,任务分发服务器与任务提交服务器通信连接,适于接收任务分发服务器发送的编译任务,将编译任务匹配相应的编译端并进行分发;以及多个编译端,多个编译端与任务分发服务器通信连接,适于接收任务分发器分发的编译任务进行执行。
可选地,在根据本发明的系统中,监控端进一步适于:判断源代码与源代码的备份是否相同;若源代码与备份不同,则判断监控到源代码的更新事件。
可选地,在根据本发明的系统中,任务分发服务器还适于:获取编译任务对应的源代码,将源代码压缩为源码包;生成源码包的下载链接发送到编译端以便编译端下载源码包。
可选地,在根据本发明的系统中,编译信息包括编译任务的任务级别,任务分发服务器还适于:为编译任务分配任务ID;根据任务级别在任务列表中排序任务ID以便依次分发编译任务。
可选地,在根据本发明的系统中,编译内容包括编译架构,每个编译端与一种编译架构相对应;任务分发服务器进一步适于:确定与编译架构相对应的编译端,并将编译任务发送到所匹配的编译端;若编译任务包括多个编译架构,则确定与各编译架构相对应的各编译端,并将编译任务发送至所匹配的各个编译端。
可选地,在根据本发明的系统中,任务分发服务器还适于:为编译端添加预定标签;将编译任务发送至携带有预定标签的编译端执行编译任务。
可选地,在根据本发明的系统中,任务分发服务器还适于:获取编译端的节点信息,根据节点信息注册编译端;获取编译端的状态信息,与编译端建立长连接,向满足预定状态的编译端分发编译任务。
可选地,在根据本发明的系统中,编译端进一步适于:向任务分发服务器发送编译任务的编译日志及编译过程中的状态信息以便监控编译过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于统信软件技术有限公司,未经统信软件技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011025165.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智能脚手架安全状态提示及检测系统
- 下一篇:一种锂电池运输用保护装置