[发明专利]分布式编译方法有效
| 申请号: | 200710176029.5 | 申请日: | 2007-10-17 |
| 公开(公告)号: | CN101140525A | 公开(公告)日: | 2008-03-12 |
| 发明(设计)人: | 官毅 | 申请(专利权)人: | 中兴通讯股份有限公司 |
| 主分类号: | G06F9/45 | 分类号: | G06F9/45 |
| 代理公司: | 北京汇泽知识产权代理有限公司 | 代理人: | 程殿军 |
| 地址: | 518057广东省深圳市南山*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 分布式 编译 方法 | ||
技术领域
本发明涉及分布式编译技术,尤其涉及一种分布式编译方法。
背景技术
工程编译中,存在工程大、文件多、编译时间长的问题,如果使用单独一台机器自动编译,即使编译的主机CPU足够强、内存足够多,但由于是串行处理,编译应用版本所有工程的时间也会相当长。这里,所谓的工程即是一个应用程序,由一些文件组成,VC编译中就是编译了无数个应用版本的exe文本。工程中的文件与别的方式组合或进行修改,就能产生一个新的工程,也就可以生成另外一个应用程序。而相应的工程组合在一起即生成相应的应用版本。
由于目前的工程编译采用的是串行方式,因此编译效率较低。
发明内容
有鉴于此,本发明的主要目的在于提供一种分布式编译方法,以实现对大工程量的快速编译,高效率生成应用版本。
为达到上述目的,本发明的技术方案是这样实现的:
一种分布式编译方法,包括:
A、服务器根据待编译工程数为可编译工程的客户机分配编译工程的任务;
B、客户机执行所分配编译工程任务并返回编译结果。
其中,步骤B中编译结果为编译成功后的编译文本或编译失败时的错误日志。
其中,步骤A中为客户机分配编译工程的任务,具体为:向客户机发送相应的编译工程指令。
其中,步骤B之后还包括:
服务器接收到编译错误日志时修改导致错误的脚本文件,并重新向客户机发送针对该编译错误工程的编译指令。
其中,步骤B之后还包括:
服务器根据各客户机返回的所有编译文本生成应用版本。
本发明针对编译工程中的大工程量编译现象,结合远程过程调用协议(RPC,Remote Procedure Call)技术,将单个机器编译工程的形式变为多个机器并行完成各自所分配工程的编译,大大节约了工程编译时间,从而提高了应用版本的生成效率。
附图说明
图1为本发明分布式编译方法的流程图。
具体实施方式
本发明的核心思想是:应用版本是由不同的工程有机组合而成的,而编译工程就成为了编译工作中的重点。目前针对工程的编译工作主要是通过单机实现的,对于浩大的应用版本而言,所包含的工程的数量是相当大的,而如果仅通过单机实现,则该单机需要支持不同的编译器,并不得不一一实现工程的编译,这无疑增加了应用版本的时间成本。针对这一问题,本发明利用网络中的RPC技术来实现多机并行完成这些工程的编译,通过服务器下达各工程的编译指令,各客户机根据接收到的编译指令完成相应工程的编译,并将编译结果通过网络返回至服务器,服务器根据这些返回结果生成应用版本。以下结合附图对本发明进行详细描述。
图1为本发明分布式编译方法的流程图,如图1所示,本发明分布式编译方法包括以下步骤:
步骤101:对网络中各用户主机进行编译器以及编译脚本部署。工程的编译需要相应的编译器以及编译用的脚本,因此需要将相应的编译器应用程序部署到各用户主机上,再在某些或某个用户主机如服务器上存储编译用的脚本。编译器可部署于客户机或服务器上。步骤101是本发明的实现准备步骤。本发明分布式编译方法可用于局域网中。
为进一步提高本发明的编译效果,本发明采用远程过程调用协议RPC中用户数据报协议(UPD,User Datagram Protocol)的非可靠通信方式,同时采用Client/Server构架,服务器端监听客户机与之通信的固定端口,而客户端则通过服务器端指定的通信端口发送UDP消息。而UDP协议是面向非连接的协议,无需建立连接的过程,因此其通信效率非常高。通过这一方式,可使服务器与客户机之间的通信速率大幅提高,本发明分布式编译的整体效率将得到进一步提升。
步骤102:服务器根据待编译工程数为可编译工程的客户机分配编译工程的任务。为了实现工程的并行编译,根据应用版本中的工程数目以及可用的编译机器来确定各编译机器的编译任务。本发明采用平均分配的方式,即根据待编译工程的总数量均匀分配到网络中各个可用的编译机器。具体的分配方式即通过服务器向各编译客户机发送编译指令。编译指令中包括编译工程指令和相应的参数。本发明中,服务器同样可以完成工程的编译工作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710176029.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种新型螺杆式空压机的螺杆型线
- 下一篇:多效固体缓蚀阻垢棒





