使用容器进行多进程启动的方法及装置的制造方法

文档序号:9200257阅读:422来源:国知局
使用容器进行多进程启动的方法及装置的制造方法
【技术领域】
[0001]本发明涉及web平台技术领域,特别是涉及一种使用容器进行多进程启动的方法及装置。
【背景技术】
[0002]为了能够节省硬件资源,虚拟化技术得到越来越多的认可及使用。虚拟化技术是一种资源管理技术,是将计算机的各种实体资源,如服务器,予以抽象、转换后呈现出来,打破实体机构间不可分割的障碍。目前,为了节省服务器资源,通过Xen虚拟化技术将一台服务器虚拟出多台服务器,虚拟出的多台服务器之间共享包括内核在内的一个完整的系统镜像,同时一个服务器上能够允许多个进程同时运行,以满足不同业务的应用需求。在通过Xen虚拟化技术虚拟服务器时,需要在实体服务器上构建一个虚拟化层,基于虚拟化层虚拟多个服务器,确保了虚拟的多个服务器之间运行空间的隔离,但是,由于虚拟化层的构建,导致虚拟服务器与系统内核不是直接进行交互,因此,使得虚拟服务器的性能不能满足不同业务的更多需求。
[0003]为了解决上述问题,可以将服务器上的不同业务分离到容器中,容器的构建无需构建虚拟化层,就能提供隔离的运行空间,即每个容器内都包含一个独享的完整运行空间,构建后的容器可以与系统内核直接进行交互,提高了中央处理器(Central ProcessingUnit,CPU)、内存等硬件资源的处理效率。但是,容器一次往往允许运行一个进程,而执行一个业务往往需要多个进程的支持,从而导致在业务执行过程中需要使用多个容器,造成资源的浪费。

【发明内容】

[0004]有鉴于此,本发明提供的一种使用容器进行多进程启动的方法及装置,主要目的在于解决容器一次往往允许运行一个进程,而执行一个业务往往需要多个进程的支持,从而导致在业务执行过程中需要使用多个容器,造成资源的浪费的问题。
[0005]依据本发明一个方面,本发明提供了一种使用容器进行多进程启动的方法,所述方法包括:
[0006]获取待启动服务项对应的第一脚本文件,所述第一脚本文件中包含所述待启动服务项的多个功能应用,所述多个功能应用在运行时需要由多个进程执行完成;
[0007]根据预设脚本功能参数对所述第一脚本文件进行处理获取第二脚本文件,所述第二脚本文件中包含启动所述待启动服务项所必须的多个功能应用;
[0008]构建容器进程控件,所述容器进程控件能够通过调用一个进程实现多个子进程的调用;
[0009]将所述第二脚本文件与所述容器进程控件生成一个容器镜像并运行。
[0010]依据本发明一个方面,本发明提供了一种使用容器进行多进程启动的装置,所述装置包括:
[0011]第一获取单元,用于获取待启动服务项对应的第一脚本文件,所述第一脚本文件中包含所述待启动服务项的多个功能应用,所述多个功能应用在运行时需要由多个进程执tx完成;
[0012]第二获取单元,用于根据预设脚本功能参数对所述第一获取单元获取的所述第一脚本文件进行处理获取第二脚本文件,所述第二脚本文件中包含启动所述待启动服务项所必须的多个功能应用;
[0013]构建单元,用于构建容器进程控件,所述容器进程控件能够通过调用一个进程实现多个子进程的调用;
[0014]生成单元,用于将所述第二获取单元获取的所述第二脚本文件与所述构建单元构建的所述容器进程控件生成一个容器镜像;
[0015]运行单元,用于运行所述生成单元生成的所述容器镜像。
[0016]借由上述技术方案,本发明提供的使用容器进行多进程启动的方法及装置,首先对获取到的待启动服务项对应的第一脚本文件进行处理,得到第二脚本文件,将第二脚本文件与容器进程控件生成一个容器镜像,由于容器进程控件能够通过调用一个进程实现多个子进程的调用,本发明中可以将第二脚本中包含的多个功能应用在运行时需要的多个进程作为调用进程的子进程,因此,当容器镜像运行时,实现使用一个容器启动多个进程。
[0017]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0018]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0019]图1示出了本发明实施例提供的一种使用容器进行多进程启动的方法的流程图;
[0020]图2示出了本发明实施例提供的一种使用容器进行多进程启动的装置的组成框图;
[0021]图3示出了本发明实施例提供的另一种使用容器进行多进程启动的装置的组成框图;
[0022]图4示出了本发明实施例提供的另一种使用容器进行多进程启动的装置的组成框图;
[0023]图5示出了本发明实施例提供的另一种使用容器进行多进程启动的装置的组成框图;
[0024]图6示出了本发明实施例提供的另一种使用容器进行多进程启动的装置的组成框图;
[0025]图7示出了本发明实施例提供的另一种使用容器进行多进程启动的装置的组成框图;
[0026]图8示出了本发明实施例提供的另一种使用容器进行多进程启动的装置的组成框图。
【具体实施方式】
[0027]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0028]本发明实施例提供一种使用容器进行多进程启动的方法,如图1所示,该方法包括:
[0029]101、获取待启动服务项对应的第一脚本文件。
[0030]本发明实施例中,待启动服务项可以包括但不局限于以下内容,例如,待启动服务项为开机服务、关机服务;或者自动启动某个应用程序服务等等。具体的,本发明实施例对待启动服务项的内容不进行限定。
[0031]获取待启动服务项对应的第一脚本文件,第一脚本文件中包含待启动服务项的多个功能应用,多个功能应用在运行时需要由多个进程执行完成。其中,该多个功能应用中包含启动该待启动服务项所必须的功能应用以及启动该待启动服务项所非必须的功能应用。
[0032]102、根据预设脚本功能参数对第一脚本文件进行处理获取第二脚本文件。
[0033]所述预设脚本功能参数是人为设置的,用于对步骤101中获取的第一脚本文件进行处理,获取第二脚本文件,第二脚本文件中包含启动所述待启动服务项所必须的多个功能应用,避免了启动待启动服务项所非必须的功能应用,节省了资源。本发明实施例中,预设脚本功能参数的设置是根据待启动服务项的实际功能应用进行设置的,不同的待启动服务项对应有不同的预设脚本功能参数;相同的待启动服务项,不同的用户设置的预设脚本功能参数也可能存在差异。此外,预设脚本功能参数的设置还要根据待启动服务项具体的应用环境,例如,当待启动服务项应用于Linux系统中时,所述预设脚本功能参数还应包含Linux系统启动时所必须的预设脚本功能参数。但在设置预设脚本功能参数时至少应包含启动待启动服务项所必须的多个功能应用,还可以根据用户自身的实际需求对预设脚本功能参数进行设置。
[0034]为了更好的理解预设脚本功能参数,以下以相同的待启动服务项,不同的用户,设置的预设脚本功能参数存在差异为例进行说明。示例性的,假设待启动服务项A的第一脚本文件中包括功能应用1、功能应用2、功能应用3、功能应用4、功能应用5、功能应用6……其中,功能应用2和功能应用4是启动待启动服务项A所必须的功能应用。用户I设置预设脚本功能参数为功能应用2和功能应用4 ;用户II设置预设脚本功能参数为功能应用2、功能应用4和功能应用5。以上仅为示例性的举例,具体的本发明实施例对预设脚本功能参数的设置方式、设置内容不进行限定。
[0035]103、构建容器进程控件。
[0036]其中,容器进程控件能够通过调用一个进程实现多个子进程的调用。在一个进程调用多个子进程时,可以接收子进程发送的请求信息,也可以向子进程发送控制信息等,实现通过一个进程调用多个子进。
[0037]104、将第二脚本文件与容器进程控件生成一个容器镜像并运行。
[0038]将第二脚本文件与容器进程控件进行绑定,生成容器镜像,当该容器镜像运行时,将第一脚本文件中的功能应用在运行时需要的进程作为容器进程控件能够调用的子进程,实现一个容器内同时运行多个进程。
[0039]本发明提供的使用容器进行多进程启动的方法,首先对获取到的待启动服务项对应的第一脚本文件进行处理,得到第二脚本文件,将第二脚本文件与容器进程控件生成一个容器镜像,由于容器进程控件能够通过调用一个进程实现多个子进程的调用,本发明中可以将第二脚本中包含的多个功能应用在运行时需要的多个进程作为调用进程的子进程,因此,当容器镜像运行时,实现使用一个容器启动多个进程。进一步的,作为对上述实施例的细化
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1