将应用程序部署至服务器的方法及装置的制造方法
【专利摘要】本发明涉及服务器技术领域,公开了一种将应用程序部署至服务器的方法及装置。在将应用程序部署至服务器的方法中,通过提取配置文件列表,该配置文件列表中记录了至少一个待配置的应用程序的配置参数;然后执行配置文件列表,以将至少一个待配置的应用程序自动化地部署到对应的服务器,从而实现应用程序的自动部署。本发明还公开了一种将应用程序部署至服务器的装置。本发明可以自动化地将应用程序部署至服务器。
【专利说明】
将应用程序部署至服务器的方法及装置
技术领域
[0001] 本发明涉及服务器技术领域,特别涉及一种将应用程序部署至服务器的方法及装 置。
【背景技术】
[0002] 随着计算机互联网技术的发展,特别是随着全球化进程的推进,由于大多数互联 网业务都在分布式系统集群上运行,分布式系统集群由多台服务器组成,所以互联网业务 规模的扩大,部署的服务器的数量也变大。由此诞生了一个新的问题:如何快速部署如此庞 大的服务器集群。由于服务器集群部署复杂,而且业务多样,所以快速部署集群及检测变成 了一个非常艰巨的任务。
[0003] 现有技术中,如果需要部署一个应用到服务器集群(也可称为部署服务器或服务 器的部署,即服务器的部署就是向服务器中安装应用程序以使得其能实现相关功能),需要 人工执行若干个步骤,执行的步骤是相同的,不同的可能仅是服务器的地址。或者,将多个 应用部署到一个服务器上,执行的步骤可能是相同的,不同的仅仅是所选的源代码不一样 而已。在上述情形下,人工部署就变得非常复杂而耗时,而且还容易出错。
[0004] 因此,现有技术有改进的必要。
【发明内容】
[0005] 本发明的目的在于提供一种将应用程序部署至服务器的方法,可以自动化地将应 用程序部署至服务器。
[0006] 为解决上述技术问题,本发明的实施方式提供了一种将应用程序部署至服务器的 方法,包括:提取配置文件列表,所述配置文件列表中记录了至少一个待配置的应用程序的 配置参数;执行所述配置文件列表,以将所述至少一个待配置的应用程序自动化地部署到 对应的服务器。
[0007] 本发明的实施方式还提供了一种将应用程序部署至服务器的装置,包括:提取模 块,用于提取配置文件列表,所述配置文件列表中记录了至少一个待配置的应用程序的配 置参数;处理模块,用于执行所述提取模块提取的所述配置文件列表,以将所述至少一个待 配置的应用程序自动化地部署到对应的服务器。
[0008] 本发明实施方式相对于现有技术而言,通过预先记录了至少一个待配置的应用程 序的配置参数的配置文件列表,例如可以由用户通过填写配置文件列表中的各项目来完成 该配置文件列表或者由用户通过撰写脚本文件来完成该配置文件列表,然后在将应用程序 部署至服务器的过程中,通过执行该配置文件列表,从而可以一键完成部署,从而能够自动 化地、快速地将应用部署到服务器,以节约人力成本。
[0009] 另外,所述配置参数包括:所述待配置的应用程序的代码存储地址以及技术环境; 所述技术环境包括如下:所述待配置的应用程序需配置至的服务器的信息。此处,对于待部 署应用程序而言,他们的主要不同在于代码的存储地址以及需要部署至的服务器,而其他 内容均基本一致。
[0010] 另外,所述提取配置文件列表之前,所述方法还包括:以图形用户界面的方式显示 所述配置文件列表,以供用户向所述配置文件列表中填入所述至少一个待配置的应用程序 的配置参数;待用户填写完所述配置文件列表,则执行所述提取配置文件列表。此种方式, 由用户填写配置文件列表的内容即可以完成应用程序的部署,对用户的要求比较低。
[0011] 另外,所述配置文件列表为脚本文件;所述提取配置文件列表包括:接收用户输入 所述脚本文件。所述脚本文件的内容包括:分配服务器IP,初始化服务器,安装运行环境,开 通资源,拷贝代码至服务器以及启动应用程序并检测服务器是否正常。此实施方式中,可以 采用脚本文件的方式来部署应用程序,即由技术人员撰写完用于部署应用程序的脚本文 件,然后通过一键执行该脚本文件就可以完成应用程序至服务器的部署。
【附图说明】
[0012] 图1是根据本发明第一实施方式的将应用程序部署至服务器的方法的流程示意 图;
[0013] 图2是根据本发明第二实施方式的将应用程序部署至服务器的方法的流程示意 图;
[0014] 图3是根据本发明第三实施方式涉及将应用程序部署至服务器的方法的流程示意 图;
[0015] 图4是根据本发明第四实施方式涉及将应用程序部署至服务器的装置的结构示意 图;
[0016] 图5是根据本发明第五实施方式涉及将应用程序部署至服务器的装置的结构示意 图;以及
[0017] 图6是根据本发明第六实施方式涉及的服务器的结构示意图。
【具体实施方式】
[0018] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实 施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中, 为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基 于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
[0019] 本发明的第一实施方式涉及一种将应用程序部署至服务器的方法。具体流程如图 1所示,其包括:
[0020] 步骤11:提取配置文件列表,配置文件列表中记录了至少一个待配置的应用程序 的配置参数。以及
[0021 ]步骤12 :执行配置文件列表,以将至少一个待配置的应用程序自动化地部署到对 应的服务器。
[0022]其中,在步骤11中提取的配置文件列表中,可以是由用户填写的配置文件列表而 来,或者,是由用户编写的脚本文件。但是,不论配置文件列表的来源为何,其一般均可以是 包括:待配置的应用程序的代码存储地址以及技术环境。技术环境包括如下:待配置的应用 程序需配置至的服务器的信息。除此之外,技术环境还可以包括如下至少一项:数据库、缓 存、运行环境。
[0023] 需要说明的是,本发明主要是为了对大量服务器实现自动化地部署,从而避免用 户单独地配置每一服务器所导致的复杂操作和时间消耗,因此配置文件列表中涵盖的待配 置的应用程序的数量越多,待配置的应用程序需配置至的服务器的数量越多,就越能体现 本发明的自动化优势。
[0024] 其中,在步骤12中,可以将一个或多个待配置的应用程序配置至同一个服务器中。 或者,一个待配置的应用程序可以配置至多个服务器中。即应用程序和服务器之间可以是 一对多或者多对一的关系,这些本发明都不需要限定。
[0025]其中,在步骤12中,简单而言,将待配置的应用程序自动化地部署至对应的服务器 可以是将待配置的应用程序的代码拷贝至对应的服务器并安装。例如,步骤12在一个实施 方式中可以包括:根据待配置的应用程序的代码存储地址,获取待配置的应用程序的代码; 然后将获取的待配置的应用程序的代码拷贝至对应的服务器并进行安装。
[0026] 本实施方式,通过预先记录了至少一个待配置的应用程序的配置参数的配置文件 列表,例如可以由用户通过填写配置文件列表中的各项目来完成该配置文件列表或者由用 户通过撰写脚本文件来完成该配置文件列表,然后再将应用程序部署至服务器的过程中, 通过执行该配置文件列表,从而可以一键完成部署,进而能够自动、快速地将应用部署到服 务器,以节约人力成本。
[0027] 本发明的第二实施方式涉及一种将应用程序部署至服务器的方法。第二实施方式 与第一实施方式大致相同,主要区别之处在于:在第一实施方式中,其中的配置文件列表可 以由用户通过填表而生成或者为用户编写的脚本文件。而在本发明第二实施方式中,主要 是对配置文件列表为由用户通过填表而生成的这一情形举例说明。其具体流程如图2所示, 包括:
[0028] 步骤21:以图形用户界面的方式显示配置文件列表,以供用户向配置文件列表中 填入至少一个待配置的应用程序的配置参数。
[0029] 步骤22:待用户填写完配置文件列表,则生成配置文件列表。
[0030] 步骤23:提取配置文件列表。以及
[0031] 步骤24:执行该配置文件列表,以将至少一个待配置的应用程序自动化地部署到 对应的服务器。
[0032] 本实施方式中,可以采用图形用户界面的方式来显示配置文件列表,然后由用户 填写。例如,用户可以从web界面上统一填写,提交好后保存至数据库,形成配置文件列表。
[0033] 本实施方式中,为了便于理解,配置文件列表可以示例如下,但是本领域技术人员 完全可以在实际使用中根据需要来设计表格:
[0034] 表一
[0036]综上所述,在本实施方式中,当要部署某一应用程序时,由用户填写配置文件列表 的内容即可以完成应用程序的部署,对用户的要求比较低。
[0037]本发明的第三实施方式也涉及一种将应用程序部署至服务器的方法。第三实施方 式与第一实施方式大致相同,主要区别之处在于:在第一实施方式中,其中的配置文件列表 可以由用户通过填表而生成或者为用户编写的脚本文件。而在本发明第三实施方式中,配 置文件列表主要是由用户编写的脚本文件的举例说明。其具体流程如图3所示,包括:
[0038]步骤31:接收用户输入脚本文件。以及
[0039] 步骤32:执行该用户输入脚本文件,以将至少一个待配置的应用程序自动化地部 署到对应的服务器。
[0040] 其中,在步骤31中,脚本文件的内容包括以下6部分:
[0041] 1)、分配服务器IP。
[0042] 2)、初始化服务器。
[0043] 3)、安装运行环境,如jdk、tomcat等。
[0044] 4)、开通资源,如开通权限,数据库、redis(缓存器)等。
[0045] 5)、拷贝代码至服务器。
[0046] 6)、启动应用程序并检测服务器是否正常。
[0047] 其中,在步骤32,执行脚本文件即是按照以上6部分的顺序来执行脚本文件,以将 应用程序部署至相应的服务器。
[0048]综上所述,在本发明的各实施方式中,当要部署某一应用程序时,只需要填写服务 器的地址,再执行配置列表文件(如脚本文件),就可以完成该服务器的部署,无需过多的人 工干预,从而节约人力成本。
[0049] 上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者 对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围 内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法 和流程的核心设计都在该专利的保护范围内。
[0050] 本发明第四实施方式涉及一种将应用程序部署至服务器的装置1。其具体结构如 图4所示,其包括:
[0051] 提取模块11,用于提取配置文件列表,配置文件列表中记录了至少一个待配置的 应用程序的配置参数。
[0052]处理模块12,用于执行提取模块11所提取的配置文件列表,以将至少一个待配置 的应用程序自动化地部署到对应的服务器。
[0053]其中,提取模块11中提取的配置文件列表中,可以是由用户填写的配置文件列表 而来,或者,则由用户编写的脚本文件。但是,不论配置文件列表的来源为何,其一般均可以 是包括:待配置的应用程序的代码存储地址以及技术环境;技术环境包括如下:待配置的应 用程序需配置至的服务器的信息。除此之外,技术环境还可以包括如下至少一项:数据库、 缓存、运行环境。
[0054]需要说明的是,本发明主要是为了对大量服务器实现自动化地部署,从而避免用 户单独地配置每一服务器所导致的复杂操作和时间消耗,因此配置文件列表中涵盖的待配 置的应用程序的数量越多,待配置的应用程序需配置至的服务器的数量越多,就越能体现 本发明的自动化优势。
[0055]其中,在处理模块12中,可以将一个或多个待配置的应用程序配置至同一个服务 器中。或者,一个待配置的应用程序可以配置至多个服务器中。即应用程序和服务器之间可 以是一对多或者多对一的关系,这些本发明都不需要限定。
[0056]其中,在处理模块12中,简单而言,将待配置的应用程序自动化地部署至对应的服 务器可以是将待配置的应用程序的代码拷贝至对应的服务器并安装。例如,步骤12在一个 实施方式中可以包括:根据待配置的应用程序的代码存储地址,获取待配置的应用程序的 代码;以及将获取的待配置的应用程序的代码拷贝至对应的服务器进行安装。
[0057] 本实施方式,通过预先记录了至少一个待配置的应用程序的配置参数的配置文件 列表,例如可以由用户通过填写配置文件列表中的各项目来完成该配置文件列表或者由用 户通过撰写脚本文件来完成该配置文件列表,然后在将应用程序部署至服务器的过程中, 通过执行该配置文件列表,从而可以一键完成部署,从而能够自动、快速地将应用部署到服 务器,以节约人力成本。
[0058] 不难发现,本实施方式为与第一实施方式相对应的系统实施例,本实施方式可与 第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有 效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在 第一实施方式中。
[0059] 本发明第五实施方式涉及一种将应用程序部署至服务器的装置1。第五实施方式 与第四实施方式大致相同,主要区别之处在于:如图5所示,第五实施方式还包括:
[0060] 显示模块10,用于以图形用户界面的方式显示配置文件列表,以供用户向配置文 件列表中填入至少一个待配置的应用程序的配置参数。
[0061] 其中,提取模块11用于待用户填写完配置文件列表,则提取生成的配置文件列表。 并且由处理模块12来执行该配置文件列表,以将至少一个待配置的应用程序自动化地部署 到对应的服务器。
[0062] 本实施方式中,可以采用图形用户界面的方式来显示配置文件列表,然后由用户 填写。例如,用户可以从web界面上统一填写,提交好后保存至数据库,形成配置文件列表。 [0063]由于第二实施方式与本实施方式相互对应,因此本实施方式可与第二实施方式互 相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,在第二实施 方式中所能达到的技术效果在本实施方式中也同样可以实现,为了减少重复,这里不再赘 述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
[0064] 另外,本实施方式中的配置文件列表也可以为脚本文件,脚本文件的内容包括:分 配服务器IP,初始化服务器,安装运行环境,开通资源,拷贝代码至服务器以及启动应用程 序并检测服务器是否正常。
[0065] 其中,上述的提取模块11提取配置文件列表的操作可以是接收用户输入的脚本文 件。然后由处理模块12执行该脚本文件,以将应用程序自动化地部署至对应的服务器。
[0066] 值得一提的是,上述实施方式中所涉及到的各模块均为逻辑模块,在实际应用中, 一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理 单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明 所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单 J L 〇
[0067]例如,根据本发明第六实施方式的服务器2的结构示意图,如图6所示。该服务器2 可以为前述的将应用程序部署至服务器的装置。其包括:处理器21、存储器22、显示器23和 收发器24。
[0068] 其中,处理器21为系统的核心,其可以CPU(中央处理器)、DSP(Digital Signal Processor,数字信号处理器)等,其主要负责该服务器2中各部件之间的协调工作,以及上 述实施方式中提及的将应用程序部署至服务器。其中,存储器22可以为R0M(Read Only Memory,只读存储器)、RAM(Random Access Memory,随机访问存储器)、缓存或闪存等存储 设备,其可以用于存储计算机可读的程序指令,该程序指令用于使得处理器实现图1或2或3 实施方式所示的部署功能。其中,显示器23主要用于显示人机交互界面,以方便用户进行操 作,例如显示配置文件列表供用户填写。其中,收发器24主要用于与待部署的各服务器以及 存储待部署的应用程序的代码的服务器之间的通信,从而实现代码的传递。
[0069]本领域普通技术人员可以理解实现上述实施方式方法中的全部或部分流程,是可 以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介 质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为 磁碟、光盘、只读存储记忆体(Read-Only Memory,R0M)或随机存储记忆体(Random Access Memory,RAM)等。
[0070]本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例, 而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
【主权项】
1. 一种将应用程序部署至服务器的方法,其特征在于,包括: 提取配置文件列表,所述配置文件列表中记录了至少一个待配置的应用程序的配置参 数; 执行所述配置文件列表,以将所述至少一个待配置的应用程序自动化地部署到对应的 服务器。2. 根据权利要求1所述的将应用程序部署至服务器的方法,其特征在于,所述配置参数 包括:所述待配置的应用程序的代码存储地址以及技术环境;所述技术环境包括如下:所述 待配置的应用程序需配置至的服务器的信息。3. 根据权利要求2所述的将应用程序部署至服务器的方法,其特征在于,所述提取配置 文件列表之前,所述方法还包括: 以图形用户界面的方式显示所述配置文件列表,以供用户向所述配置文件列表中填入 所述至少一个待配置的应用程序的配置参数; 待用户填写完所述配置文件列表,则执行所述提取配置文件列表。4. 根据权利要求3所述的将应用程序部署至服务器的方法,其特征在于,所述执行所述 配置文件列表包括: 根据所述待配置的应用程序的代码存储地址,获取所述待配置的应用程序的代码;以 及 将获取的所述待配置的应用程序的代码拷贝至对应的服务器进行安装。5. 根据权利要求2所述的将应用程序部署至服务器的方法,其特征在于,所述配置文件 列表为脚本文件;所述提取配置文件列表具体包括:接收用户输入所述脚本文件。6. 根据权利要求5所述的将应用程序部署至服务器的方法,其特征在于,所述脚本文件 的内容包括:分配服务器IP,初始化服务器,安装运行环境,开通资源,拷贝代码至服务器以 及启动应用程序并检测服务器是否正常。7. -种将应用程序部署至服务器的装置,其特征在于,包括: 提取模块,用于提取配置文件列表,所述配置文件列表中记录了至少一个待配置的应 用程序的配置参数; 处理模块,用于执行所述提取模块提取的所述配置文件列表,以将所述至少一个待配 置的应用程序自动化地部署到对应的服务器。8. 根据权利要求7所述的将应用程序部署至服务器的装置,其特征在于,所述配置参数 包括:所述待配置的应用程序的代码存储地址以及技术环境;所述技术环境包括如下:所述 待配置的应用程序需配置至的服务器的信息。9. 根据权利要求8所述的将应用程序部署至服务器的装置,其特征在于,还包括: 显示模块,用于以图形用户界面的方式显示所述配置文件列表,以供用户向所述配置 文件列表中填入所述至少一个待配置的应用程序的配置参数; 所述提取模块,用于待用户填写完所述配置文件列表,则执行所述提取配置文件列表。10. 根据权利要求8所述的将应用程序部署至服务器的装置,其特征在于,所述配置文 件列表为脚本文件,所述脚本文件的内容包括:分配服务器IP,初始化服务器,安装运行环 境,开通资源,拷贝代码至服务器以及启动应用程序并检测服务器是否正常。
【文档编号】G06F9/445GK105912375SQ201610373067
【公开日】2016年8月31日
【申请日】2016年5月31日
【发明人】黄飞
【申请人】乐视控股(北京)有限公司, 乐视电子商务(北京)有限公司