CN107632834A - 自定义应用部署方法、装置、设备及计算机可读存储介质 - Google Patents

自定义应用部署方法、装置、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN107632834A
CN107632834A CN201710807908.7A CN201710807908A CN107632834A CN 107632834 A CN107632834 A CN 107632834A CN 201710807908 A CN201710807908 A CN 201710807908A CN 107632834 A CN107632834 A CN 107632834A
Authority
CN
China
Prior art keywords
application
deployment
server
grouped task
disclosure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710807908.7A
Other languages
English (en)
Inventor
赵前程
张建
赵晓燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xiaodu Information Technology Co Ltd
Original Assignee
Beijing Xiaodu Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Xiaodu Information Technology Co Ltd filed Critical Beijing Xiaodu Information Technology Co Ltd
Priority to CN201710807908.7A priority Critical patent/CN107632834A/zh
Publication of CN107632834A publication Critical patent/CN107632834A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本公开实施例提供一种自定义应用部署方法、装置、设备及计算机可读存储介质。自定义应用部署方法包括:从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组;根据所述应用的内容以及所述任务分组信息生成部署单;根据所述部署单部署所述应用。通过本公开实施例的方式进行应用部署,即使有大量应用需要部署,也无需运维人员操作来进行部署,而且应用部署所需的时间短,成功率高。

Description

自定义应用部署方法、装置、设备及计算机可读存储介质
技术领域
本公开实施例涉及计算机应用技术领域,尤其涉及一种自定义应用部署方法、装置、设备及计算机可读存储介质。
背景技术
各IT机构(企业、政府部门等)为了将应用(服务独立的应用软件部署单元)部署到服务器上(的指定路径下),大部分的机构采用手动或半自动化脚本将应用部署到服务器。对于服务器较多(例如数百台、数千台、数万台),并且服务器上服务的应用软件较多(例如数百个),而且需要经常将应用部署到服务器的场景,对应用进行人工部署的工作量是非常大的,人力成本极高,出错概率相对较大。
发明内容
在实际应用中,发明人发现:相关技术中,广泛采用的解决方案是将所要部署的应用统一一次性部署到服务器,而并不能进行自定义分批部署。例如,相关技术的应用部署方式一般是应用提供方将应用提供给服务器之类的应用发布空间的提供方的运维人员,由运维人员自行安排部署。这会导致以下问题:
1、如果有大量应用部署,则会导致运维人员难以及时操作,从而耽误应用部署,并且应用部署所需的时间长,成功率不高。
2、应用提供方不能根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而是必须由运维人员确定和安排部署的步骤和部署的服务器。这种部署方式不能使应用提供方获得较为灵活自由的部署方式,因此也会引发部署应用相对繁琐的问题,不能进行回归测试的问题,不能进行分批量多次部署的问题等很多问题。
为了解决上述技术问题,本公开第一方面提供了一种自定义应用部署方法,包括:
从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组;
根据所述应用的内容以及所述任务分组信息生成部署单;
根据所述部署单部署所述应用。
结合第一方面,本公开在第一方面的第一种实现方式中,还包括:
根据所述部署单的所述任务分组信息,对已经根据所述部署单部署的应用进行回滚操作。
结合第一方面,本公开在第一方面的第二种实现方式中,还包括:
响应于所述部署单的生成,调取所述软件包,其中,所述软件包保存在与所述应用将要部署的服务器同一局域网内的存储服务器上。
结合第一方面,本公开在第一方面的第三种实现方式中,所述任务分组信息包括任务分组数量、所述服务器的IP地址、部署服务器批次信息。
结合第一方面,本公开在第一方面的第四种实现方式中,所述部署任务包括所述应用要被部署到的服务器的IP地址和相应路径。
结合第一方面,本公开在第一方面的第五种实现方式中,所述部署单中包括由所述应用提供方自定义的在所述任务分组中所述应用要被部署到的服务器的服务器信息。
结合第一方面的第五种实现方式,本公开在第一方面的第六种实现方式中,还包括:
根据所述服务器信息对所述应用要被部署到的服务器进行配置以使得所述服务器适于部署所述应用。
本公开第二方面提供了一种自定义应用部署装置,包括:
获取模块,用于从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组;
生成模块,用于根据所述应用的内容以及所述任务分组信息生成部署单;
部署模块,用于根据所述部署单部署所述应用。
结合第二方面,本公开在第二方面的第一种实现方式中,还包括:
回滚模块,用于根据所述部署单的所述任务分组信息,对已经根据所述部署单部署的应用进行回滚操作。
结合第二方面,本公开在第二方面的第二种实现方式中,还包括:
调取模块,用于响应于所述部署单的生成,调取所述软件包,其中,所述软件包保存在与所述应用将要部署的服务器同一局域网内的存储服务器上。
结合第二方面,本公开在第二方面的第三种实现方式中,所述任务分组信息包括任务分组数量、所述服务器的IP地址、部署服务器批次信息。
结合第二方面,本公开在第二方面的第四种实现方式中,所述部署任务包括所述应用要被部署到的服务器的IP地址和相应路径。
结合第二方面,本公开在第二方面的第五种实现方式中,所述部署单中包括由所述应用提供方自定义的在所述任务分组中所述应用要被部署到的服务器的服务器信息。
结合第二方面的第五种实现方式,本公开在第二方面的第六种实现方式中,还包括:
配置模块,用于根据所述服务器信息对所述应用要被部署到的服务器进行配置以使得所述服务器适于部署所述应用。
本公开第三方面提供了一种电子设备,包括存储器和处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如权利要求1-7任一项所述的方法。
本公开第四方面提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如权利要求1-7任一项所述的方法。
通过本公开实施例的方式进行应用部署,即使有大量应用需要部署,也无需运维人员操作来进行部署,而且应用部署所需的时间短,成功率高。通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而非由运维人员确定和安排部署的步骤和部署的服务器。本公开实施例的部署方式能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试,并且可以对应用进行分批量多次部署。
本公开的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本公开实施例或相关技术中的技术方案,下面将对示例性实施例或相关技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些示例性实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出根据本公开一实施方式的自定义应用部署方法的流程图;
图2示出根据本公开另一实施方式的自定义应用部署方法的流程图;
图3示出根据本公开又一实施方式的自定义应用部署方法的流程图;
图4示出根据本公开又一实施方式的自定义应用部署方法的流程图;
图5示出根据本公开一实施方式的自定义应用部署装置的结构框图;
图6示出根据本公开另一实施方式的自定义应用部署装置的结构框图;
图7示出根据本公开又一实施方式的自定义应用部署装置的结构框图;
图8示出根据本公开又一实施方式的自定义应用部署装置的结构框图;
图9示出根据本公开一实施方式的自定义应用部署设备的结构框图;
图10是适于用来实现根据本公开一实施方式的自定义应用部署方法的计算机系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本公开方案,下面将结合本公开示例性实施例中的附图,对本公开示例性实施例中的技术方案进行清楚、完整地描述。
在本公开的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
正如背景技术中所述,对于服务器较多(例如数百台、数千台、数万台),并且服务器上服务的应用软件较多(例如数百个),而且需要经常将应用部署到服务器的场景,对应用进行人工部署的工作量是非常大的,人力成本极高,出错概率相对较大。
采用本公开实施例的应用部署方式可以解决相关技术的以下问题:如果有大量应用部署,则会导致运维人员难以及时操作,从而耽误应用部署,并且应用部署所需的时间长,成功率不高。应用提供方不能根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而是必须由运维人员确定和安排部署的步骤和部署的服务器。这种部署方式不能使应用提供方获得较为灵活自由的部署方式,因此也会引发部署应用相对繁琐的问题,不能进行回归测试的问题,不能进行分批量多次部署的问题等很多问题。
因此,本公开实施例提出了由应用提供方对应用进行自定义部署的技术方案。
下面将结合本公开示例性实施例中的附图,对本公开示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
图1示出根据本公开一实施方式的自定义应用部署方法的流程图。该方法可以包括步骤S101、S102和S103。
在步骤S101中,从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组。
在步骤S102中,根据应用的内容以及任务分组信息生成部署单。
在步骤S103中,根据部署单部署应用。
在本公开中,应用提供方可以是应用的开发者和/或运营者,与服务器之类的应用发布空间的提供方可以不同。在本公开中,将要部署的应用会被打包为软件包,以便于部署到服务器上。
通过本公开实施例的方式进行应用部署,即使有大量应用需要部署,也无需运维人员操作来进行部署,而且应用部署所需的时间短,成功率高。通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而非由运维人员确定和安排部署的步骤和部署的服务器。本公开实施例的部署方式能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试,并且可以对应用进行分批量多次部署。
在一个实施例中,当一个要部署的应用需要被多批次部署到不同的服务器上时,需要为这个应用的部署设置多个部署任务的分组,即,多个任务分组。一个实施例中,对于每个任务分组,都具有相应的任务分组信息。本公开实施例的部署方式能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试,并且可以对应用进行分批量多次部署。
在本公开的一个实施例中,应用可以指的是一个应用软件中的一个独立进行服务的软件部署单元,或者一个独立进行服务的模块。例如,一个购物软件或者一个移动终端上使用的购物APP可以包括多个应用,诸如对商品的评价应用、排行应用、付款应用等等,这些应用都属于软件部署单元。
在本公开的一个实施例中,任务分组信息可以包括任务分组数量、服务器的IP地址、部署服务器批次信息。通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而非由运维人员确定和安排部署的步骤和部署的服务器。
在本公开的一个实施例中,任务分组数量指的是对某个应用的部署设置的部署任务的分组的数量。例如,应用提供方在准备部署某个应用时,决定份3次部署应用,此时,任务分组数量可以是3。
在本公开的一个实施例中,服务器的IP地址指的是应用将要部署到的服务器的IP地址。本领域技术人员可以理解,在不公开的实施例中,部署应用的服务器可以是物理服务器或虚拟服务器,但是从部署应用的角度看,物理服务器或虚拟服务器没有区别,只要有要部署应用的服务器的IP地址,就可以将应用部署到该IP地址指向的服务器。
在本公开的一个实施例中,部署服务器批次信息可以指的是要部署应用的服务器的批次。在本公开的一个实施例中,当在多个部署任务分组中,多批次在不同的服务器上部署应用时,需要设置各个任务分组的各自批次的服务器。
在本公开的一个实施例中,部署任务包括应用要被部署到的服务器的IP地址和相应路径。在本公开的一个实施例中,在将应用部署到服务器上时,需要知道应用要被部署到的服务器的IP地址以及该服务器上部署应用的具体路径。通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,以及服务器上的相应部署路径,而非由运维人员确定和安排部署的步骤和部署的服务器及部署路径。这样,能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试。
在本公开的一个实施例中,部署单中包括由应用提供方自定义的在任务分组中应用要被部署到的服务器的服务器信息。在本公开的一个实施例中,部署单是根据应用提供方提供的应用的内容以及所述任务分组信息生成的,应用的部署可以依照部署单进行。在此情况下,部署单中包括相应的任务分组中应用要被部署到的服务器的服务器信息,例如服务器的IP地址信息。在本公开的一个实施例中,可以采用批量获取服务器信息的工具,诸如批量执行的脚本,批量获取服务器信息的工具获取所有服务器信息。
通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而非由运维人员确定和安排部署的步骤和部署的服务器。这样,能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试。
在一个实例中,在将一个应用部署到100台服务器的情况下,采用相关技术的应用部署方式与本公开实施例的应用部署方式的情况比较表:
即,采用相关技术的应用部署方式,如果在一台服务器部署应用需花费10分钟,则在100台服务器部署应用需要1000分钟,而且应用部署成功率只有87%。
采用本公开实施例的应用部署方式,在100台服务器部署应用只需要10分钟,而且应用部署成功率能够达到99%。
显然,通过本公开实施例的方式进行应用部署,即使有大量应用需要部署,也无需运维人员操作来进行部署,而且应用部署所需的时间短,成功率高。而且,当在数百台、数千台、数万台服务器上部署应用时,采用本公开实施例的应用部署方式进行应用部署会比相关技术的部署方式有更加显著的效率提升,时间缩短。
图2示出根据本公开另一实施方式的自定义应用部署方法的流程图。如图2所示,该方法除了包括与图1中相同的步骤S101、S102和S103之外,还包括步骤S201。
在步骤S401中,根据部署单的任务分组信息,对已经根据部署单部署的应用进行回滚操作。
在本公开的一个实施例中,回滚操作指的是程序或数据处理错误,将程序或数据恢复到上一次正确状态的行为,回滚包括程序回滚和数据回滚等类型。
在相关技术中,由于运维人员自行安排对应用的部署,难以对应用的部署进行回滚。在一次性在大量服务器上部署应用的情况下,由于错误而导致回滚对于运维人员通常来说是严重失误。
根据本公开的一个实施例,据部署单的任务分组信息,对已经根据部署单部署的应用进行回滚操作,能够根据应用提供方设置的任务分组,精确地对某一任务分组的应用部署进行回滚操作,能够提高应用提供方进行应用部署的准确性和成功率,这对于应用部署来说是非常重要的,也有利于应用提供方对应用部署的管控。
图3示出根据本公开又一实施方式的自定义应用部署方法的流程图。
如图3所示,该方法除了包括与图1中相同的步骤S101、S102和S103之外,还在骤S102后包括步骤S301。
在步骤S301中,响应于部署单的生成,调取所述软件包,其中,软件包保存在与应用将要部署的服务器同一局域网内的存储服务器上。
在本公开的一个实施例中,部署应用的服务器可能距离应用提供方非常遥远,例如,几千公里。在此情况下,如果在进行应用部署时,将软件包从应用提供方的服务器传到距离遥远的(多个)服务器,对带宽资源的要求,服务器性能的要求,部署效率的下降都会令人难以承受。因此,在部署应用之前,将软件包保存在与应用将要部署的服务器同一局域网内的存储服务器上,在部署时将软件包部署到局域网内的服务器上,能够节省带宽资源,对服务器性能的要求也显著降低,而且能够保证部署效率。
图4示出根据本公开又一实施方式的自定义应用部署方法的流程图。
如图4所示,该方法除了包括与图1中相同的步骤S101、S102和S103之外,还在骤S103前包括步骤S401。
在步骤S401中,根据服务器信息对应用要被部署到的服务器进行配置以使得服务器适于部署应用。
在本公开的一个实施例中,在部署应用之前,要部署应用的服务器需要进行配置,以适于应用的部署。因此,在部署应用之前,根据服务器信息对应用要被部署到的服务器进行相应配置,能够提高应用部署成功率,保证应用部署效率。
图5示出根据本公开一实施方式的自定义应用部署装置的结构框图。该装置可以包括获取模块501、生成模块502和部署模块503。
获取模块501用于从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组。
生成模块502用于根据应用的内容以及任务分组信息生成部署单。
部署模块503用于根据部署单部署应用。
在本公开中,应用提供方可以是应用的开发者和/或运营者,与服务器之类的应用发布空间的提供方可以不同。在本公开中,将要部署的应用会被打包为软件包,以便于部署到服务器上。
通过本公开实施例的方式进行应用部署,即使有大量应用需要部署,也无需运维人员操作来进行部署,而且应用部署所需的时间短,成功率高。通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而非由运维人员确定和安排部署的步骤和部署的服务器。本公开实施例的部署方式能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试,并且可以对应用进行分批量多次部署。
在一个实施例中,当一个要部署的应用需要被多批次部署到不同的服务器上时,需要为这个应用的部署设置多个部署任务的分组,即,多个任务分组。一个实施例中,对于每个任务分组,都具有相应的任务分组信息。本公开实施例的部署方式能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试,并且可以对应用进行分批量多次部署。
在本公开的一个实施例中,应用可以指的是一个应用软件中的一个独立进行服务的软件部署单元,或者一个独立进行服务的模块。例如,一个购物软件或者一个移动终端上使用的购物APP可以包括多个应用,诸如对商品的评价应用、排行应用、付款应用等等,这些应用都属于软件部署单元。
在本公开的一个实施例中,任务分组信息可以包括任务分组数量、服务器的IP地址、部署服务器批次信息。通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而非由运维人员确定和安排部署的步骤和部署的服务器。
在本公开的一个实施例中,任务分组数量指的是对某个应用的部署设置的部署任务的分组的数量。例如,应用提供方在准备部署某个应用时,决定份3次部署应用,此时,任务分组数量可以是3。
在本公开的一个实施例中,服务器的IP地址指的是应用将要部署到的服务器的IP地址。本领域技术人员可以理解,在不公开的实施例中,部署应用的服务器可以是物理服务器或虚拟服务器,但是从部署应用的角度看,物理服务器或虚拟服务器没有区别,只要有要部署应用的服务器的IP地址,就可以将应用部署到该IP地址指向的服务器。
在本公开的一个实施例中,部署服务器批次信息可以指的是要部署应用的服务器的批次。在本公开的一个实施例中,当在多个部署任务分组中,多批次在不同的服务器上部署应用时,需要设置各个任务分组的各自批次的服务器。
在本公开的一个实施例中,部署任务包括应用要被部署到的服务器的IP地址和相应路径。在本公开的一个实施例中,在将应用部署到服务器上时,需要知道应用要被部署到的服务器的IP地址以及该服务器上部署应用的具体路径。通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,以及服务器上的相应部署路径,而非由运维人员确定和安排部署的步骤和部署的服务器及部署路径。这样,能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试。
在本公开的一个实施例中,部署单中包括由应用提供方自定义的在任务分组中应用要被部署到的服务器的服务器信息。在本公开的一个实施例中,部署单是根据应用提供方提供的应用的内容以及所述任务分组信息生成的,应用的部署可以依照部署单进行。在此情况下,部署单中包括相应的任务分组中应用要被部署到的服务器的服务器信息,例如服务器的IP地址信息。在本公开的一个实施例中,可以采用批量获取服务器信息的工具,诸如批量执行的脚本,批量获取服务器信息的工具获取所有服务器信息。
通过本公开实施例的方式,应用提供方能够根据需要来决定将应用分步骤具体部署到线上的哪台或者哪些服务器,而非由运维人员确定和安排部署的步骤和部署的服务器。这样,能够使应用提供方进行较为灵活自由的应用部署,简化了部署应用的过程,而且能够对部署的应用进行回归测试。
在一个实例中,在将一个应用部署到100台服务器的情况下,采用相关技术的应用部署方式与本公开实施例的应用部署方式的情况比较表:
部署所需时间(分钟) 部署成功率
相关技术的应用部署方式 10*100=1000 87%
本公开实施例的应用部署方式 10 99%
即,采用相关技术的应用部署方式,如果在一台服务器部署应用需花费10分钟,则在100台服务器部署应用需要1000分钟,而且应用部署成功率只有87%。
采用本公开实施例的应用部署方式,在100台服务器部署应用只需要10分钟,而且应用部署成功率能够达到99%。
显然,通过本公开实施例的方式进行应用部署,即使有大量应用需要部署,也无需运维人员操作来进行部署,而且应用部署所需的时间短,成功率高。而且,当在数百台、数千台、数万台服务器上部署应用时,采用本公开实施例的应用部署方式进行应用部署会比相关技术的部署方式有更加显著的效率提升,时间缩短。
图6示出根据本公开另一实施方式的自定义应用部署装置的结构框图。如图6所示,该装置除了包括与图5中相同的获取模块501、生成模块502和部署模块503之外,还包括回滚模块601。
回滚模块601用于根据部署单的任务分组信息,对已经根据部署单部署的应用进行回滚操作。
在本公开的一个实施例中,回滚操作指的是程序或数据处理错误,将程序或数据恢复到上一次正确状态的行为,回滚包括程序回滚和数据回滚等类型。
在相关技术中,由于运维人员自行安排对应用的部署,难以对应用的部署进行回滚。在一次性在大量服务器上部署应用的情况下,由于错误而导致回滚对于运维人员通常来说是严重失误。
根据本公开的一个实施例,据部署单的任务分组信息,对已经根据部署单部署的应用进行回滚操作,能够根据应用提供方设置的任务分组,精确地对某一任务分组的应用部署进行回滚操作,能够提高应用提供方进行应用部署的准确性和成功率,这对于应用部署来说是非常重要的,也有利于应用提供方对应用部署的管控。
图7示出根据本公开又一实施方式的自定义应用部署装置的结构框图。
如图7所示,该装置除了包括与图5中相同的获取模块501、生成模块502和部署模块503之外,还在生成模块502后包括调取模块701。
调取模块701用于响应于部署单的生成,调取所述软件包,其中,软件包保存在与应用将要部署的服务器同一局域网内的存储服务器上。
在本公开的一个实施例中,部署应用的服务器可能距离应用提供方非常遥远,例如,几千公里。在此情况下,如果在进行应用部署时,将软件包从应用提供方的服务器传到距离遥远的(多个)服务器,对带宽资源的要求,服务器性能的要求,部署效率的下降都会令人难以承受。因此,在部署应用之前,将软件包保存在与应用将要部署的服务器同一局域网内的存储服务器上,在部署时将软件包部署到局域网内的服务器上,能够节省带宽资源,对服务器性能的要求也显著降低,而且能够保证部署效率。
图8示出根据本公开又一实施方式的自定义应用部署装置的结构框图。
如图8所示,该装置除了包括与图5中相同的获取模块501、生成模块502和部署模块503之外,还在部署模块503前包括配置模块801。
配置模块801用于根据服务器信息对应用要被部署到的服务器进行配置以使得服务器适于部署应用。
在本公开的一个实施例中,在部署应用之前,要部署应用的服务器需要进行配置,以适于应用的部署。因此,在部署应用之前,根据服务器信息对应用要被部署到的服务器进行相应配置,能够提高应用部署成功率,保证应用部署效率。
以上描述了自定义应用部署装置的内部功能和结构,在一个可能的设计中,该自定义应用部署装置的结构可实现为自定义应用部署设备,如图9中所示,该处理设备900可以包括处理器901以及存储器902。
所述存储器902用于存储支持自定义应用部署装置执行上述任一实施例中自定义应用部署方法的程序,所述处理器901被配置为用于执行所述存储器902中存储的程序。
所述存储器902用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器901执行。
所述处理器901用于执行前述各方法步骤中的全部或部分步骤。
其中,所述自定义应用部署设备的结构中还可以包括通信接口,用于自定义应用部署设备与其他设备或通信网络通信。
本公开示例性实施例还提供了一种计算机存储介质,用于储存所述自定义应用部署装置所用的计算机软件指令,其包含用于执行上述任一实施例中自定义应用部署方法所涉及的程序。
图10是适于用来实现根据本公开一实施方式的自定义应用部署方法的计算机系统的结构示意图。
如图10所示,计算机系统100包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行上述图1所示的实施方式中的各种处理。在RAM1003中,还存储有系统1000操作所需的各种程序和数据。CPU1001、ROM1002以及RAM1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本公开的实施方式,上文参考图1描述的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,所述计算机程序包含用于执行图1的数据处理方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。
附图中的流程图和框图,图示了按照本公开各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,路程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开的方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
本公开公开了A1、一种自定义应用部署方法,包括:从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组;根据所述应用的内容以及所述任务分组信息生成部署单;根据所述部署单部署所述应用。A2、根据A1所述的方法,还包括:根据所述部署单的所述任务分组信息,对已经根据所述部署单部署的应用进行回滚操作。A3、根据A1所述的方法,还包括:响应于所述部署单的生成,调取所述软件包,其中,所述软件包保存在与所述应用将要部署的服务器同一局域网内的存储服务器上。A4、根据A1所述的方法,所述任务分组信息包括任务分组数量、所述服务器的IP地址、部署服务器批次信息。A5、根据A1所述的方法,所述部署任务包括所述应用要被部署到的服务器的IP地址和相应路径。A6、根据A1所述的方法,所述部署单中包括由所述应用提供方自定义的在所述任务分组中所述应用要被部署到的服务器的服务器信息。A7、根据A6所述的方法,还包括:根据所述服务器信息对所述应用要被部署到的服务器进行配置以使得所述服务器适于部署所述应用。
本公开公开了B8、一种自定义应用部署装置,包括:获取模块,用于从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组;生成模块,用于根据所述应用的内容以及所述任务分组信息生成部署单;部署模块,用于根据所述部署单部署所述应用。B9、根据B8所述的装置,还包括:回滚模块,用于根据所述部署单的所述任务分组信息,对已经根据所述部署单部署的应用进行回滚操作。B10、根据B8所述的装置,还包括:调取模块,用于响应于所述部署单的生成,调取所述软件包,其中,所述软件包保存在与所述应用将要部署的服务器同一局域网内的存储服务器上。B11、根据B8所述的装置,所述任务分组信息包括任务分组数量、所述服务器的IP地址、部署服务器批次信息。B12、根据B8所述的装置,所述部署任务包括所述应用要被部署到的服务器的IP地址和相应路径。B13、根据B8所述的装置,所述部署单中包括由所述应用提供方自定义的在所述任务分组中所述应用要被部署到的服务器的服务器信息。B14、根据B13所述的装置,还包括:配置模块,用于根据所述服务器信息对所述应用要被部署到的服务器进行配置以使得所述服务器适于部署所述应用。
本公开公开了C15、一种电子设备,包括存储器和处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如A1-A7任一项所述的方法。
本公开公开了D16、一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如A1-A7任一项所述的方法。

Claims (10)

1.一种自定义应用部署方法,其特征在于,包括:
从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组;
根据所述应用的内容以及所述任务分组信息生成部署单;
根据所述部署单部署所述应用。
2.根据权利要求1所述的方法,其特征在于,还包括:
根据所述部署单的所述任务分组信息,对已经根据所述部署单部署的应用进行回滚操作。
3.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述部署单的生成,调取所述软件包,其中,所述软件包保存在与所述应用将要部署的服务器同一局域网内的存储服务器上。
4.根据权利要求1所述的方法,其特征在于,所述任务分组信息包括任务分组数量、所述服务器的IP地址、部署服务器批次信息。
5.根据权利要求1所述的方法,其特征在于,所述部署任务包括所述应用要被部署到的服务器的IP地址和相应路径。
6.根据权利要求1所述的方法,其特征在于,所述部署单中包括由所述应用提供方自定义的在所述任务分组中所述应用要被部署到的服务器的服务器信息。
7.根据权利要求6所述的方法,其特征在于,还包括:
根据所述服务器信息对所述应用要被部署到的服务器进行配置以使得所述服务器适于部署所述应用。
8.一种自定义应用部署装置,其特征在于,包括:
获取模块,用于从应用提供方获取包含将要部署的应用的软件包以及与将要部署的应用对应的至少一个任务分组的任务分组信息,其中,所述任务分组是所述应用提供方为部署所述应用设置的部署任务的分组;
生成模块,用于根据所述应用的内容以及所述任务分组信息生成部署单;
部署模块,用于根据所述部署单部署所述应用。
9.一种电子设备,其特征在于,包括存储器和处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该计算机指令被处理器执行时实现如权利要求1-7任一项所述的方法。
CN201710807908.7A 2017-09-08 2017-09-08 自定义应用部署方法、装置、设备及计算机可读存储介质 Pending CN107632834A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710807908.7A CN107632834A (zh) 2017-09-08 2017-09-08 自定义应用部署方法、装置、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710807908.7A CN107632834A (zh) 2017-09-08 2017-09-08 自定义应用部署方法、装置、设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN107632834A true CN107632834A (zh) 2018-01-26

Family

ID=61101892

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710807908.7A Pending CN107632834A (zh) 2017-09-08 2017-09-08 自定义应用部署方法、装置、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN107632834A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189415A (zh) * 2018-08-31 2019-01-11 郑州云海信息技术有限公司 部署服务器的装置、方法、系统及计算机可读存储介质
CN109672722A (zh) * 2018-10-23 2019-04-23 平安科技(深圳)有限公司 数据部署方法及装置、计算机存储介质和电子设备
CN109918090A (zh) * 2019-02-15 2019-06-21 网宿科技股份有限公司 应用部署方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075358A (zh) * 2010-12-31 2011-05-25 网宿科技股份有限公司 针对大规模服务器集群的内容分发和部署的系统和方法
CN103209197A (zh) * 2012-01-12 2013-07-17 百度在线网络技术(北京)有限公司 集群服务器部署方法及系统
CN105404528A (zh) * 2015-09-28 2016-03-16 高新兴科技集团股份有限公司 一种分布式自动化部署系统
CN105912375A (zh) * 2016-05-31 2016-08-31 乐视控股(北京)有限公司 将应用程序部署至服务器的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075358A (zh) * 2010-12-31 2011-05-25 网宿科技股份有限公司 针对大规模服务器集群的内容分发和部署的系统和方法
CN103209197A (zh) * 2012-01-12 2013-07-17 百度在线网络技术(北京)有限公司 集群服务器部署方法及系统
CN105404528A (zh) * 2015-09-28 2016-03-16 高新兴科技集团股份有限公司 一种分布式自动化部署系统
CN105912375A (zh) * 2016-05-31 2016-08-31 乐视控股(北京)有限公司 将应用程序部署至服务器的方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189415A (zh) * 2018-08-31 2019-01-11 郑州云海信息技术有限公司 部署服务器的装置、方法、系统及计算机可读存储介质
CN109672722A (zh) * 2018-10-23 2019-04-23 平安科技(深圳)有限公司 数据部署方法及装置、计算机存储介质和电子设备
CN109672722B (zh) * 2018-10-23 2022-04-26 平安科技(深圳)有限公司 数据部署方法及装置、计算机存储介质和电子设备
CN109918090A (zh) * 2019-02-15 2019-06-21 网宿科技股份有限公司 应用部署方法及装置

Similar Documents

Publication Publication Date Title
CN109656538A (zh) 应用程序的生成方法、装置、系统、设备和介质
CN104216793B (zh) 应用程序备份、恢复的方法及设备
CN107632834A (zh) 自定义应用部署方法、装置、设备及计算机可读存储介质
US20180159724A1 (en) Automatic task tracking
CN111756779B (zh) 数据序列化处理方法、装置及计算机系统
CN103927216A (zh) 用于管理虚拟装置的方法和系统
CN109710252A (zh) 页面生成方法、装置、设备及存储介质
CN109344322A (zh) 复杂网络的关系图谱挖掘分析平台、方法及存储介质
CN110140108A (zh) 处理兄弟调用
CN107480117A (zh) 自动化页面表单数据的恢复方法及装置
CN108073698B (zh) 实时动画显示方法、装置、电子终端及可读存储介质
US20220269504A1 (en) Client-side enrichment and transformation via dynamic logic for analytics
CN110445632A (zh) 一种预防客户端崩溃的方法和装置
CN109582317A (zh) 用于调试寄宿应用的方法和装置
CN110162397A (zh) 资源分配方法、装置及系统
CN108885667A (zh) 安全风险管理系统、服务器、控制方法、以及非暂时性计算机可读介质
CN110109684A (zh) 区块链节点管理代理服务安装方法、电子装置及存储介质
CN107368300B (zh) 一种基于MapReduce的数据汇总系统及方法
CN108304321A (zh) 一种创建前后端开发联调环境的方法、系统及装置
US20090031308A1 (en) Method And Apparatus For Executing Multiple Simulations on a Supercomputer
WO2015116191A1 (en) Business process managment
CN110457318A (zh) 区块链中数据字段的更新方法、装置、介质、电子设备
CN109510735A (zh) 一种报文测试的方法及装置
CN106330556B (zh) 一种用于生成服务模块调用关联信息的方法与装置
CN115134228A (zh) 环境链路供给与检测方法、装置、设备、介质和程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20180126

RJ01 Rejection of invention patent application after publication