[发明专利]代码的编译方法、装置、存储介质及电子设备有效
| 申请号: | 201811553413.7 | 申请日: | 2018-12-18 |
| 公开(公告)号: | CN109710263B | 公开(公告)日: | 2020-03-03 |
| 发明(设计)人: | 吴思振;巩锐 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41 |
| 代理公司: | 北京金信知识产权代理有限公司 11225 | 代理人: | 崔家源;夏东栋 |
| 地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 代码 编译 方法 装置 存储 介质 电子设备 | ||
1.一种代码的编译方法,其特征在于,包括:
按照预设拆分规则将由第一语言代码组成的预定任务拆分为M个子任务;
根据预设调度规则将M个所述子任务分配至预定分布式集群系统中的N个节点设备,以通过N个所述节点设备对M个所述子任务进行编译处理;
接收节点设备编译处理后生成的由第二语言代码组成的可执行文件,并按照所述预设拆分规则对应的聚合规则聚合接收到的所有所述可执行文件,以得到可执行文件集合;
其中,M大于或等于N,M和N均为正整数;
所述根据预设调度规则将所述M个子任务分配至预定分布式集群中的N个节点设备,包括:
获取所述预定分布式集群中各个所述节点设备的网络环境参数;
根据所述网络环境参数在所述预定分布式集群系统中确定待使用的节点设备集群,其中,所述节点设备集群中的节点设备的性能参数符合执行代码编译的预定要求;
确定所述预定任务的参数信息,其中,所述参数信息至少包括以下其中之一:任务的存储管理地址信息、时间戳信息、操作路径信息;
根据所述参数信息在本地缓存中查找是否存在与所述预定任务的相似度达到预定相似度的所述可执行文件集合;
在所述本地缓存中存在所述可执行文件集合的情况下,在所述本地缓存中获取所述可执行文件集合;
在所述本地缓存中不存在所述可执行文件集合的情况下,根据所述参数信息向远端服务器发送查找请求,其中,所述查找请求用于请求查找所述远端服务器中是否存在与所述预定任务的相似度达到所述预定相似度的所述可执行文件集合;
根据所述预设调度规则将M个所述子任务分配至所述节点设备集群中的N个所述节点设备。
2.如权利要求1所述的方法,其特征在于,所述根据预设调度规则将所述M个子任务分配至所述节点设备集群中的N个节点设备,还包括:
根据每个所述节点设备当前执行的任务量和内存使用量确定所述节点设备集群中每个所述节点设备的当前性能参数;
根据每个所述节点设备的所述当前性能参数和子任务总数确定分配至每个所述节点设备的所述子任务的数量。
3.如权利要求1所述的方法,其特征在于,所述根据所述参数信息向远端服务器发送查找请求之后,还包括:
在所述远端服务器不存在所述可执行文件集合的情况下,在所述本地缓存中获取与所述预定任务的相似度最高的所述可执行文件集合;
在所述远端服务器存在所述可执行文件集合的情况下,在所述本地缓存中删除与所述预定任务的相似度最低的所述可执行文件集合,并从所述远端服务器将相似度达到所述预定相似度的所述可执行文件集合下载至所述本地缓存。
4.如权利要求1或3所述的方法,其特征在于,所述根据预设调度规则将所述M个子任务分配至预定分布式集群系统中的N个节点设备,包括:
根据各个所述子任务以及获取到的所述可执行文件集合确定每个所述节点设备需要编译的各个所述子任务的代码内容;
将各个所述子任务的所述代码内容分别发送至各个所述子任务对应的所述节点设备。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
在所述节点设备编译子任务出现错误的情况下,接收报错消息,其中,所述报错消息中携带有错误原因;
根据所述错误原因确定对应的修复策略,并根据所述修复策略修复对应的子任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811553413.7/1.html,转载请声明来源钻瓜专利网。





