一种基于云环境的应用同步方法、发布主机和生产主机技术

技术编号:16216227 阅读:50 留言:0更新日期:2017-09-15 22:24
本发明专利技术提出一种基于云环境的应用同步方法,应用于发布主机,包括以下步骤:获取编译命令和配置文件,并从配置文件中提取生产主机列表;获取已测试完成的源代码,并采用编译命令将源代码编译成至少一个可执行文件的上线代码;将至少一个上线代码发布到生产主机列表中对应的生产主机;获取生产主机返回的上线代码同步完成指令,并判断所有的上线代码是否均发布到对应的生产主机,若是,则结束同步过程,若否,则返回至上一步骤。本发明专利技术可以将上线代码同时发布到几个生产主机,同时代码发布过程自动进行,无需人为干预,提高了代码发布结果的准确率和代码发布的效率,也减少了程序员的工作量。本发明专利技术还提出了一种发布主机和生产主机。

Application synchronization method based on cloud environment, release host and production host

The invention provides an application of synchronization method based on the cloud environment, applied to the release of the host, comprising the following steps: acquiring the command and configuration files, and extract the production host list from the configuration file; obtaining complete testing of the source code, and the compiler will command source code is compiled into an executable file at least the line of code; at least one line of code released to production host list corresponding production host; obtaining production host return code on-line synchronization instructions, and determine all the code on-line are released to the corresponding production host, if the end of the synchronization process, if not, it returns the first step. The invention can be on-line code released to the production host, automatic code release, without human intervention, to improve the efficiency of the code release accuracy and code release, also reduces the workload of programmers. The invention also provides a publishing host and a production host.

【技术实现步骤摘要】
一种基于云环境的应用同步方法、发布主机和生产主机
本专利技术涉及数据传输领域,特别涉及一种基于云环境的应用同步方法、发布主机和生产主机。
技术介绍
基于互联网背景和电信运营商等方面的需求,每个系统均向着大数据和云化方向发展,而由于生产主机的增多,代码的上传和应用重启工作也成倍的增加,同时为了保证上线成功率,还需要耗费大量时间和精力对上传的代码进行检查,因此极大地增加了程序员的工作量。
技术实现思路
本专利技术旨在至少解决上述技术问题之一。为此,本专利技术的一个目的在于提出一种基于云环境的应用同步方法,该应用同步方法能够保证代码上传的准确度和上传效率,减少代码上传和应用重启过程中人为的干预,保证上线成功率。本专利技术的另一个目的在于提供一种发布主机和生产主机。为了实现上述目的,本专利技术的一个实施例提出了一种基于云环境的应用同步方法,应用于发布主机,包括以下步骤:步骤1,获取预先设定的编译命令和配置文件,并从配置文件中提取生产主机列表;步骤2,采用第一预设脚本获取已测试完成的源代码,并采用所述编译命令将所述源代码编译成至少一个可执行文件的上线代码;步骤3,根据所述配置文件的内容将至少一个上线代码发布到生产主机列表中对应的生产主机;步骤4,获取生产主机返回的上线代码同步完成指令,并判断所有的上线代码是否均发布到对应的生产主机,若是,则结束同步过程,若否,则返回至步骤3。根据本专利技术实施例的一种基于云环境的应用同步方法,可以将上线代码同时发布到几个生产主机,同时代码发布过程自动进行,无需人为干预,提高了代码发布结果的准确率和代码发布的效率,也减少了程序员的工作量。另外,根据本专利技术上述实施例的一种基于云环境的应用同步方法还可以具有如下附加的技术特征:在一些示例中,所述配置文件包括生产主机IP信息、生产主机类型信息和上线时间。在一些示例中,所述步骤3具体为:按照配置文件中的生产主机类型信息和生产主机IP信息获取所述上线代码分别对应的生产主机,然后在所述上线时间,将所述上线代码发布到对应的生产主机。在一些示例中,所述步骤3中,采用sshpass工具连接对应的生产主机后,将所述上线代码发布到所述生产主机。本专利技术第二方面的实施例还提出了一种基于云环境的应用同步方法,应用于生产主机,包括以下步骤:步骤11,采用第二预设脚本获取上线代码;步骤12,备份当前可执行文件对应的原始代码后,采用所述上线代码覆盖所述原始代码;步骤13,重启所述可执行文件,验证所述可执行文件的功能,并生成包含验证结果的第一验证日志;步骤14,向所述发布主机返回上线代码同步完成指令。根据本专利技术实施例的一种基于云环境的应用同步方法,生产主机可以自动获取所述上线代码,同时在采用上线代码对原始代码覆盖完成后,自动对可执行文件的功能进行验证,并生成包括验证结果的日志,程序员读取对应的日志即可了解上线代码是否正确,实现过程简单、可用性强。另外,根据本专利技术上述实施例的一种基于云环境的应用同步方法还可以具有如下附加的技术特征:在一些示例中,所述步骤12和步骤13之间还包括代码校验步骤,具体为:获取覆盖过程结束后的当前代码,比较当前代码和所述上线代码是否一致,并生成包含比较结果的第二验证日志。本专利技术第三方面的实施例还提出了一种发布主机,包括:第一获取模块,用于获取预先设定的编译命令和配置文件,并从配置文件中提取生产主机列表;编译模块,用于采用第一预设脚本获取已测试完成的源代码,并采用所述编译命令将所述源代码编译成至少一个可执行文件的上线代码;发布模块,用于根据所述配置文件的内容将至少一个上线代码发布到生产主机列表中对应的生产主机;判断模块,用于获取生产主机返回的上线代码同步完成指令,并判断所有的上线代码是否均发布到对应的生产主机,若是,则结束同步过程,若否,则驱动发布模块。在一些示例中,所述发布模块具体用于按照配置文件中的生产主机类型信息和生产主机IP信息获取所述上线代码分别对应的生产主机,然后在上线时间,将上线代码发布到对应的生产主机。本专利技术第四方面的实施例还提出了一种生产主机,包括:第二获取模块,用于采用第二预设脚本获取所述上线代码;代码覆盖模块,用于备选当前可执行文件对应的原始代码后,采用所述上线代码覆盖所述原始代码;第一验证模块,用于在生产主机上重启所述可执行文件,验证所述可执行文件的功能,并生成包含验证结果的第一验证日志;指令发送模块,用于向所述发布主机返回上线代码同步完成指令。在一些示例中,还包括第二验证模块,所述第二验证模块用于获取覆盖过程结束后的当前代码,比较当前代码和所述上线代码是否一致,并生成包含比较结果的第二验证日志。本专利技术第四方面的实施例还提出了一种基于云环境下的应用同步系统,包括以上所述的发布主机和生产主机。本专利技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为实施例1提供的一种应用于发布主机的基于云环境的应用同步方法的流程示意图;图2为实施例2提供的一种应用于生产主机的基于云环境的应用同步方法的流程示意图;图3为实施例3一种基于云环境下的应用同步系统的结构示意图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本专利技术,而不能理解为对本专利技术的限制。在本专利技术的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。在本专利技术的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本专利技术中的具体含义。参照下面的描述和附图,将清楚本专利技术的实施例的这些和其他方面。在这些描述和附图中,具体公开了本专利技术的实施例中的一些特定实施方式,来表示实施本专利技术的实施例的原理的一些方式,但是应当理解,本专利技术的实施例的范围不受此限制。相反,本专利技术的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。以下结合附图描述根据本专利技术实施例的一种基于云环境的应用同步方法、发布主机和生产主机。图1为实施例1一种基于云环境的应用同步方法的流程示意图,应用于发布主机,如图1所示,所述应用同步方法包括以下步骤:步骤1,获取预先设定的编译命令和配置文件,并从配置文件中提取生产主机列表;步骤2,采用第一预设脚本获取已测试完成的源代码,并采用所述编译命令将所述源代码编译成至少一个可执行文件的上线代码;步骤3,根据所述配置文件的内容将至少一个上线代码发布到生产主机列表中对应的生产主机;步骤4,获取生产主机返回的上线代码同步完成指令,并判断所有的上线代码是否均发布到对应的生产主机,若是,则结束同步过程,若否,则返回至步骤3。本专利技术实施例可以将上线代码同时发布到几个生产主机,同时代码发布过程自动进行,无需本文档来自技高网...
一种基于云环境的应用同步方法、发布主机和生产主机

【技术保护点】
一种基于云环境的应用同步方法,应用于发布主机,其特征在于,包括以下步骤:步骤1,获取预先设定的编译命令和配置文件,并从配置文件中提取生产主机列表;步骤2,采用第一预设脚本获取已测试完成的源代码,并采用所述编译命令将所述源代码编译成至少一个可执行文件的上线代码;步骤3,根据所述配置文件的内容将至少一个上线代码发布到生产主机列表中对应的生产主机;步骤4,获取生产主机返回的上线代码同步完成指令,并判断所有的上线代码是否均发布到对应的生产主机,若是,则结束同步过程,若否,则返回至步骤3。

【技术特征摘要】
1.一种基于云环境的应用同步方法,应用于发布主机,其特征在于,包括以下步骤:步骤1,获取预先设定的编译命令和配置文件,并从配置文件中提取生产主机列表;步骤2,采用第一预设脚本获取已测试完成的源代码,并采用所述编译命令将所述源代码编译成至少一个可执行文件的上线代码;步骤3,根据所述配置文件的内容将至少一个上线代码发布到生产主机列表中对应的生产主机;步骤4,获取生产主机返回的上线代码同步完成指令,并判断所有的上线代码是否均发布到对应的生产主机,若是,则结束同步过程,若否,则返回至步骤3。2.根据权利要求1所述的基于云环境的应用同步方法,其特征在于,所述配置文件包括生产主机IP信息、生产主机类型信息和上线时间。3.根据权利要求2所述的基于云环境的应用同步方法,其特征在于,所述步骤3具体为:按照配置文件中的生产主机类型信息和生产主机IP信息获取所述上线代码分别对应的生产主机,然后在所述上线时间,将所述上线代码发布到对应的生产主机。4.根据权利要求1~3任一所述的基于云环境的应用同步方法,其特征在于,所述步骤3中,采用sshpass工具连接对应的生产主机后,将所述上线代码发布到所述生产主机。5.一种基于云环境的应用同步方法,应用于生产主机,其特征在于,包括以下步骤:步骤11,采用第二预设脚本获取上线代码;步骤12,备份当前可执行文件对应的原始代码后,采用所述上线代码覆盖所述原始代码;步骤13,重启所述可执行文件,验证所述可执行文件的功能,并生成包含验证结果的第一验证日志;步骤14,向所述发布主机返回上线代码同步完成指令。6.根据权利要求5所述的基于云环境的应用同步方...

【专利技术属性】
技术研发人员:袁礼洋
申请(专利权)人:北京思特奇信息技术股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1