[发明专利]一种rpm包分布式编译方法及装置有效
申请号: | 201911006888.9 | 申请日: | 2019-10-22 |
公开(公告)号: | CN111026397B | 公开(公告)日: | 2022-12-20 |
发明(设计)人: | 王博文;梁华 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 武汉东喻专利代理事务所(普通合伙) 42224 | 代理人: | 雷霄 |
地址: | 430000 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 rpm 分布式 编译 方法 装置 | ||
本发明涉及一种rpm包分布式编译方法及装置。该方法包括步骤:接收用户输入的编译指令;根据所述编译指令获取的每个需要编译的rpm包类型的相关rpm包;收集所述相关rpm包的依赖包信息,根据所述依赖包信息将所述相关rpm包分发到容器中;在所述容器中编译所述相关rpm包。本发明可以显著缩短编译时长,大大提升编译效率。
技术领域
本发明涉及云计算领域,尤其涉及一种rpm包分布式编译方法及装置。
背景技术
云平台中有大量rpm包需要编译,包括操作系统公共的包以及业务组件特有的软件包。现有编译方法中,采用单个rpm包依次编译的方式,每每个rpm包的编译过程都会有大量相关依赖包的同步编译,当需要编译多个存在相同依赖包的rpm时,这些不同包的依赖包会被重复检查甚至编译。这样就会产生以下几个问题:不同的rpm的相关依赖包会存在同样的包,编译的中间产物会重复创建和删除,包也会重复删除与建立。并且,中间产物的重复创建和删除会延长整个编译过程的时间,效率低下。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提出了一种rpm包分布式编译方法及装置,能够解决编译时间长、效率低下的问题。
根据本发明的一个方面,本发明提供了一种rpm包分布式编译方法,包括步骤:
接收用户输入的编译指令;
根据所述编译指令获取的每个需要编译的rpm包类型的相关rpm包;
收集所述相关rpm包的依赖包信息,根据所述依赖包信息将所述相关rpm包分发到容器中;
在所述容器中编译所述相关rpm包。
根据本发明的另一个方面,本发明提供了一种rpm包编译装置,包括:
调度器、具有编译环境的编译容器和rpm包存储单元;
所述调度器,用来接收用户输入的编译指令,根据所述编译指令获取的每个需要编译的rpm包类型的相关rpm包,收集所述相关rpm包的依赖包信息,根据所述依赖包信息将所述相关rpm包分发到容器中;
编译容器,用来在所述容器中编译所述相关rpm包;
rpm包存储单元,用来存储相关rpm包。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够充分利用机器性能,分发到编译机集群,完成整个编译过程,相比传统编译方式能够显著缩短编译时长,大大提升编译效率。
附图说明
图1是传统的rpm包编译的流程图;
图2是本发明实施例提供的一种rpm包编译装置的架构示意图;
图3是本发明实施例提供的一种rpm包编译方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
图1是传统的rpm包编译的流程图,每个rpm包的编译过程都会有大量相关依赖包的同步编译,当需要编译多个目标rpm包时,这些不同包的依赖包会被重复检查甚至编译。
本发明提出了一种新的编译方法,该方法根据共同依赖包将rpm包划分为几类,将完全共用依赖包的rpm包划分为一组,共用一个mock,实现不同业务包独立编译,再通过本专利中的分布式编译平台调度容器自动实现按需编译。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911006888.9/2.html,转载请声明来源钻瓜专利网。