【技术实现步骤摘要】
编程方法及相关装置
[0001]本申请属于编译
,具体涉及一种编程方法及相关装置。
技术介绍
[0002]目前,现有的针对分布式编译的方案中,设置有统一的调度中心,针对发起的多次编译的调度,调度中心肩负了接收编译请求、调度编译资源以响应编译请求等任务,通过调度中心达到对编译资源的统一调度以达到资源利用最大化的目的。这种结构下,调度中心肩负了接收编译请求,调度编译资源以响应编译请求等任务,这样会使得调度中心发起的每个模块的编译都是发起一次单独的编译,使得调度中心承受了较大的工作压力。
技术实现思路
[0003]本申请实施例提供了一种编译方法及相关装置,以期降低主服务器的工作压力。
[0004]第一方面,本申请实施例提供了一种种编译方法,应用于编译系统的第一从服务器,所述编译系统包括主服务器、N个从服务器和代码服务器,N为正整数,所述N个从服务器包括所述第一从服务器,所述方法包括:
[0005]接收来自所述主服务器的针对目标编译任务的编译流程,所述目标编译任务为针对目标代码的编译任务;
[0006]根据所述编译流程启动所述目标编译任务;
[0007]控制M个第二从服务器并行处理所述目标代码,M为小于N的正整数,所述M个第二从服务器中每个第二从服务器的处理内容与子代码集合中的至少一个第一子代码对应,所述子代码集合包括对所述目标代码进行拆分得到的层次为叶节点的多个第一子代码,任意两个第二从服务器所对应的子代码互不相同。
[0008]第二方面,本申请实施例提供了一种 ...
【技术保护点】
【技术特征摘要】
1.一种编译方法,其特征在于,应用于编译系统的第一从服务器,所述编译系统包括主服务器、N个从服务器和代码服务器,N为正整数,所述N个从服务器包括所述第一从服务器,所述方法包括:接收来自所述主服务器的针对目标编译任务的编译流程,所述目标编译任务为针对目标代码的编译任务;根据所述编译流程启动所述目标编译任务;控制M个第二从服务器并行处理所述目标代码,M为小于N的正整数,所述M个第二从服务器中每个第二从服务器的处理内容与子代码集合中的至少一个第一子代码对应,所述子代码集合包括对所述目标代码进行拆分得到的层次为叶节点的多个第一子代码,任意两个第二从服务器所对应的子代码互不相同。2.根据权利要求1所述的方法,其特征在于,所述控制M个第二从服务器并行处理所述目标代码之前,所述方法还包括:向所述主服务器发送编译节点申请消息;接收来自所述主服务器响应所述编译节点申请消息而发送的所述M个第二从服务器的地址,所述M个第二从服务器是所述N个从服务器中被确定为编译节点的所述M个空闲从服务器;根据所述地址与所述M个第二从服务器建立通信。3.根据权利要求2所述的方法,其特征在于,所述控制M个第二从服务器并行处理所述目标代码,包括:控制所述M个第二从服务器获取所述目标代码;向所述每个第二从服务器发送第一编译命令,所述第一编译命令用于指示当前的第二从服务器所需要编译的第一子代码中第一个被处理的第一子代码;控制所述多个第二从服务器中至少一个已完成第一编译命令的第二从服务器处理所述多个第一子代码中未被编译的第一子代码。4.根据权利要求3所述的方法,其特征在于,所述控制所述多个第二从服务器中至少一个已完成第一编译命令的第二从服务器处理所述多个第一子代码中未被编译的第一子代码,包括:接收来自至少一个第二从服务器的第一编译结果;向所述至少一个第二从服务器发送第二编译命令,所述第二编译命令用于指示所述多个第一子代码中未被编译的第一子代码;接收来自至少一个第二从服务器的第二编译结果;重复上传过程直至所述未配置处理的第一子代码全部被编译。5.根据权利要求3所述的方法,其特征在于,所述控制所述M个第二从服务器获取所述目标代码,包括:分别向每个第二服务器发送远程登录指令,以对所述每个第二服务器进行远程控制,控制所述每个第二从服务器获取所述目标代码。6.根据权利要求2所述的方法,其特征在于,所述控制M个第二从服务器并行处理所述目标代码,包括:向所述每个第二从服务器发送第一编译命令,所述第一编译命令用于指示当前的第二
从服务器所需要编译的第一子代码中第一个被处理的第一子代码;向所述每个第二服务器发送第一远程登录指令,以对所述没第二服务器进行远程控制,控制所述每个第二从服务器从所述代码服务器下载所述第一编译命令所对应的第一子代码进行编译处理;控制所述多个第二从服务器中至少一个已完成第一编译命令的第二从服务器处理所述多个第一子代码中未被编译的第一子代码。7.根据权利要求3所述的方法,其特征在于,控制所述多个第二从服务器中至少一个已完成第一编译命令的第二从服务器处理所述多个第一子代码中未被编译的第一子代码,包括:接收来自至少一个第二从服务器的第一编译结果;向所述至少一个第二从服务器发送第二编译命令,所述第二编译命令用于指示所述多个第一子代码中未被编译的第一子代码;向所述至少一个第二从服务器发送第二远程登录指令,以对所述没第二服务器进行远程控制,控制所述至少一个第二从服务器从所述代码服务器下载所述第二编译命令所对应的第一子代码进行编译处理;接收来自至少一个第二从服务器的第二编译结果;重复上传过程直至所述未被编译的第一子代码全部被编译。8.根据权利要求4或7所述的方法,其特征在于,所述接收每个第二从服务器发送的针对所述第一子代码的第一编译结果之后,所述方法还包括:根据目标代码的层级模型中节点之间的关联性,将当前得到的编译结果作为上一层级子代码的编译输入,调用所述第二从服务器对当前编译结果的上一层级子代码进行编译处理;重复上述步骤,直至所述目标代码全部执行完成。9.根据权利要求2所述的方法,其特征在于,所述控制M个第二从服务器并行处理所述目标代码之前,所述方法还包括:向所述代码服务器发送第一下载请求,所述第一下载请求用于指示与所述目标编译任务对应的目标代码;接收来自所述代码服务器的所述目标代码。10.一种编译方法,其特征在于,应用于编译系统的第二从服务器,所述编译系统包括主服务器、N个从服务器和代码服务器,所述N个从服务器包括所述第一从服务器和第二从服务器,所述方法包括:接收所述第一从服务器的控制指令;根据所述控制指令处理目标编译任务中的目标代码,所述第二从服务器的处理内容与子代码集合中的至少一个第一子代码对应,所述子代码集合包括对所述目标代码进行拆分得到的层次为叶节点的多个第一子代码;所述目标编译任务是由所述第一从服务器根据所述编译流程启动的,所述编译流程是由所述主服务器针对所述目标编译任务生成的,所述控制指令是所述第一从服务器根据编译流程触发的。11.根据权利要求10所述的方法,其特征在于,所述根据所述控制指令处理目标编译任务中的目标代码,包括:
接收来自所述第一从服务器的远程登录指令;根据所述远程登录指令接受所述第一从服务器...
【专利技术属性】
技术研发人员:晏军,罗国斌,
申请(专利权)人:南京欧珀软件科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。