镜像部署方法、装置与流程

文档序号:12120088阅读:287来源:国知局
镜像部署方法、装置与流程
本发明涉及计算机
技术领域
,尤其涉及一种镜像部署方法与装置,以及计算机系统。
背景技术
:现有技术中,一般一个节点或主机上部署一个或多个容器,容器的类型一般与应用对应,即运行相同应用的容器可以认为是同一类容器。当用户需要在节点或主机上部署某一个应用的容器时,首先需要获取该应用对应的镜像,再根据该镜像创建对应的容器,用户可以根据某一应用对应的镜像在节点或主机上创建多个运行该应用的容器。通过容器技术来部署应用的一大特点就是启动快速,而任一节点或主机启动某一应用的容器前必须先获取该应用对应的镜像,一般的热门或最新的镜像都存储在镜像库中,当用户需要在节点或主机上启动某一应用对应的容器时,获取该应用对应的镜像的耗时往往制约了容器的启动速度。技术实现要素:针对上述现有技术而提出本发明,利用本发明可以解决现有技术方案中部署容器时需要获取镜像带来的容器启动的效率降低的问题。本发明实施例的第一方面提供了一种镜像部署方法,包括:获取容器的配置策略,所述容器的配置策略包括自动伸缩策略或复制控制策略,所述自动伸缩策略包括第一镜像标识、所述第一镜像标识对应的容器的最大部署数量、所述第一镜像标识对应的容器的当前部署数量,所述复制控制策略包括第二镜像标识、所述第二镜像标识对应的容器的部署数量;根据所述容器的配置策略确定待部署的镜像的标识。结合第一方面,在第一方面的第一种实现方式中,所述方法还包括:获取镜像的热度信息,所述镜像的热度信息包括第三镜像标识以及所述第三镜像标识对应的镜像的热门指数;所述根据所述容器的配置策略确定待部署的镜像的标识还包括:根据所述镜像的热度信息,确定所述待部署的镜像的标识。结合第一方面或第一方面的第一种实现方式,在第一方面的第二种实现方式中,所述方法还包括:根据所述待部署的镜像的标识对应的容器的配置策略,确定所述待部署的镜像对应的容器的预部署数量。结合第一方面的第一种实现方式,在第一方面的第三种实现方式中,所述方法还包括:根据所述待部署的镜像的标识对应的容器的配置策略和所述待部署的镜像的热度信息,确定所述待部署的镜像对应的容器的预部署数量。通过确定待部署的镜像对应的容器的预部署数量,可以得知该待部署的镜像需要在多少个节点上预部署,使得如果需要启动该待部署的镜像对应的节点的之后,可以在这些预部署了镜像的节点上直接启动容器,无须在启动容器时再从镜像库获取镜像,有效提升了容器的启动速度。结合第一方面的第二种或第三种实现方式,在第一方面的第四种实现方式中,所述方法还包括:获取各个节点的负载状态信息以及各个节点已部署的镜像的列表;判断所述待部署的镜像对应的容器的已部署数量,与所述待部署的镜像对应的容器的预部署数量的大小关系;若所述待部署的镜像对应的容器的已部署数量小于所述待部署的镜像对应的容器的预部署数量,则根据各个节点的负载状态信息,选取未部署所述待部署的镜像的负载最低的节点用于部署所述待部署的镜像。在确定了待部署的镜像的预部署数量后,通过选取合适的节点用于部署镜像,使得这些部署了镜像的节点能够快速启动容器,无须在启动容器的时候去获取镜像。需要说明的是,在第一方面的第四种实现方式中,除了获取各个节点的负载状态信息以及各个节点已部署的镜像的列表之外,还获取了各个节点的容器的部署情况,其中包括了关于各个节点部署了多少个何种镜像对应的容器的信息。本发明实施例的第二方面提供了一种镜像部署装置,包括:接收单元,用于获取容器的配置策略,所述容器的配置策略包括自动伸缩策略或复制控制策略,所述自动伸缩策略包括第一镜像标识、所述第一镜像标识对应的容 器的最大部署数量、所述第一镜像标识对应的容器的当前部署数量,所述复制控制策略包括第二镜像标识、所述第二镜像标识对应的容器的部署数量;处理单元,用于根据所述容器的配置策略确定待部署的镜像的标识。结合第二方面,在第二方面的第一种实现方式中,所述接收单元还用于获取镜像的热度信息,所述镜像的热度信息包括第三镜像标识以及所述第三镜像标识对应的镜像的热门指数;所述处理单元还用于根据所述镜像的热度信息,确定所述待部署的镜像的标识。结合第二方面或第二方面的第一种实现方式,在第二方面的第二种实现方式中,所述处理单元还用于根据所述待部署的镜像的标识对应的容器的配置策略,确定所述待部署的镜像对应的容器的预部署数量。结合第二方面的第一种实现方式,在第二方面的第三种实现方式中,所述处理单元还用于根据所述待部署的镜像的标识对应的容器的配置策略和所述待部署的镜像的热度信息,确定所述待部署的镜像对应的容器的预部署数量。结合第二方面的第二或第三种实现方式,在第二方面的第四种实现方式中,所述镜像部署装置还包括:选择单元,用于获取各个节点的负载状态信息以及各个节点已部署的镜像的列表;判断所述待部署的镜像对应的容器的已部署数量,与所述待部署的镜像对应的容器的预部署数量的大小关系;若所述待部署的镜像对应的容器的已部署数量小于所述待部署的镜像对应的容器的预部署数量,则根据各个节点的负载状态信息,选取未部署所述待部署的镜像的负载最低的节点用于部署所述待部署的镜像。需要说明的是,在第二方面的第四种实现方式中,除了获取各个节点的负载状态信息以及各个节点已部署的镜像的列表之外,还获取了各个节点的容器的部署情况,其中包括了关于各个节点部署了多少个何种镜像对应的容器的信息。本发明实施例的第三方面提供了一种计算机系统,包括:处理器,存储器和总线,其中,所述处理器和所述存储器通过所述总线通信;所述存储器用于存储计算机执行指令,所述处理器用于执行所述计算机执行指令;所述处理器还用于获取容器的配置策略,所述容器的配置策略包括自动伸缩策略或复制控制策略,所述自动伸缩策略包括第一镜像标识、所述第一镜像标识对应的容器的最大部署数量、所述第一镜像标识对应的容器的当前部署数量, 所述复制控制策略包括第二镜像标识、所述第二镜像标识对应的容器的部署数量;根据所述容器的配置策略确定待部署的镜像的标识。结合第三方面,在第三方面的第一种实现方式中,所述处理器还用于获取镜像的热度信息,所述镜像的热度信息包括第三镜像标识以及所述第三镜像标识对应的镜像的热门指数;所述根据所述容器的配置策略确定待部署的镜像的标识还包括:根据所述镜像的热度信息,确定所述待部署的镜像的标识。结合第三方面或第三方面的第一种实现方式,在第三方面的第二种实现方式中,所述处理器还用于根据所述待部署的镜像的标识对应的容器的配置策略,确定所述待部署的镜像对应的容器的预部署数量。结合第三方面的第一实现方式,在第三方面的第三种实现方式中,所述处理器还用于根据所述待部署的镜像的标识对应的容器的配置策略和所述待部署的镜像的热度信息,确定所述待部署的镜像对应的容器的预部署数量。结合第三方面的第二种或第三种实现方式,在第三方面的第四种实现方式中,所述处理器还用于获取各个节点的负载状态信息以及各个节点已部署的镜像的列表;判断所述待部署的镜像对应的容器的已部署数量,与所述待部署的镜像对应的容器的预部署数量的大小关系;若所述待部署的镜像对应的容器的已部署数量小于所述待部署的镜像对应的容器的预部署数量,则根据各个节点的负载状态信息,选取未部署所述待部署的镜像的负载最低的节点用于部署所述待部署的镜像。需要说明的是,在第三方面的第四种实现方式中,除了获取各个节点的负载状态信息以及各个节点已部署的镜像的列表之外,还获取了各个节点的容器的部署情况,其中包括了关于各个节点部署了多少个何种镜像对应的容器的信息。本发明实施例提供的镜像的部署方法、装置以及计算机系统,通过获取各个镜像对应的容器的自动伸缩策略或复制控制策略,来选择出待部署的镜像的标识,并确定部署这些镜像的节点,以使得这些节点能够在启动对应的容器之前,就能够从镜像库中获取对应的镜像,避免了节点启动容器时需要从镜像库中下载镜像的耗时,提升了启动容器的效率。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作以简单地介绍,显而易见的,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明方法实施例所应用的镜像部署方法的流程示意图;图2为本发明装置实施例所应用的镜像部署装置的组成结构示意图;图3为本发明系统实施例所应用的计算机系统的组成结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本说明书中的术语“镜像”,一般包括可以用于支撑容器运行的某一应用的文件系统,例如热门的应用容器引擎Docker,基于Docker的容器开发人员一般常开发应用的Dockerfile,基于Dockerfile生成Docker镜像,而节点或主机在获取Docker镜像后,再建立Docker容器。本说明书中的术语“镜像库”,指代存储镜像的数据库,也常称为DockerHub,镜像库多为公有的,一般由镜像的发布方维护,例如阿里云Docker镜像库。本说明书中的术语“容器资源管理平台”,一般指代对各个节点的容器的部署和调度的平台,其功能包括管理各个节点的资源视图(CPU、内存利用率、网络、存储的利用情况等)、各个节点的容器分布视图等。方法实施例本方法实施例详细阐述一种镜像的部署方法,该方法常用于容器的部署及应用系统中,其流程示意图如图1所示,包括:步骤202,获取容器的配置策略,包括容器的自动伸缩(AutoScaling) 策略或复制控制(ReplicationController)策略。其中,容器的自动伸缩策略包括:第一镜像标识,第一镜像标识对应的容器的最大部署数量,第一镜像标识对应的容器的当前部署数量,如表1。容器的自动伸缩策略一般用于管理系统中某一镜像对应的容器的部署情况,例如该容器能够部署的最大数量,最小数量,当前的部署数量;容器的复制控制(ReplicationController)策略,包括:第二镜像标识,第二镜像标识对应的容器的部署数量,如表2,此处的容器的部署数量为预设的该容器期望的部署数量。容器的复制控制策略也用于管理某一镜像对应的容器的部署情况,例如该容器在系统中需要部署的数量,需要部署该容器的主机或节点的数量。其中,第一镜像标识对应的容器,指代运行第一镜像标识对应的镜像的容器,其它镜像对应的容器以此类推。镜像标识容器的最大部署数量容器的当前部署数量A305B4010表1镜像标识容器的部署数量C20D50表2步骤204,根据容器的配置策略确定待部署的镜像的标识。具体的,容器的配置策略中包括该容器对应的镜像标识,因此可以直接确定待部署的镜像的标识,例如容器的配置策略为自动伸缩策略时,可以设置为容器的最大部署数量大于预设的阈值时,该容器对应的镜像标识为待部署的镜像的标识;容器的配置策略为复制控制策略时,可以设置为容器部署数量大于预设的阈值时,该容器对应的镜像标识为待部署的镜像的标识。由于容器的部署及应用系统中,并不是所有类型的容器都有对应的配置策略,因此也可以设置为所有的有配置策略的容器对应的镜像标识,均为待部署的镜像的标识。可选的,步骤202中还包括:获取镜像的热度信息,镜像的热度信息用于表示镜像库中各个镜像的热门指数,例如下载次数、点击次数、评论打分等,镜像的热度信息包括第三镜像标识以及第三镜像标识对应的镜像的热门指数。步骤202中的镜像的热度信息,也可以为镜像库中热门程度最高的n个镜像的标识,此处的n为预设的数字。需要说明的是,容器的配置策略以及镜像的热度信息可以按照任意顺序获取,也可以周期性的获取,一般镜像的热度信息来源于镜像库。可选的,步骤202中还获取了镜像的热度信息的情况下,步骤204还包括:根据镜像的热度信息,确定待部署的镜像的标识。具体的,无论容器的配置策略或镜像的热度信息均包含镜像标识,因此步骤204中除了根据容器的配置策略确定待部署的镜像的标识外,还可以根据镜像的热度信息确定待部署的镜像的标识,例如从中选出热门程度最高的m个镜像的标识,此处的m为预设的数字。步骤204中还可以综合考虑容器的配置策略、镜像的热度信息来确定待部署的镜像的标识。可选的,步骤204后还包括步骤206。步骤206,根据待部署的镜像的标识对应的容器的配置策略,确定该待部署的镜像对应的容器的预部署数量。具体的,如果步骤204中确定了多个待部署的镜像的标识,则步骤206中可以根据各个待部署的镜像的标识对应的容器的配置策略的各个参数,确定各个待部署的镜像对应的容器的预部署数量。例如,已知某一容器的最大部署数量为50个,则可以设置该容器的预部署数量为50×Q,Q的取值可以根据实际需要自行设计。可选的,如果步骤202中还获取了镜像的热度信息的情况下,则步骤206中可以根据各个待部署的镜像的标识对应的容器的配置策略的各个参数和热度信息,例如部署镜像A的数量=f(镜像A的配置策略参数,镜像A的热度信息),确定待部署的镜像对应的容器的预部署数量,此处的f为预设的函数。需要说明的是,可能出现某一镜像的标识对应的容器的配置策略存在,而该镜像的标识对应的镜像的热度信息不存在的情况,此时将该镜像的热度信息对于f(镜像A的配置策略参数,镜像A的热度信息)的影响消除即可。可选的,步骤204后执行了步骤206的情况下,步骤206后还包括步骤208。步骤208,获取各个节点的负载状态信息、各个节点已部署的镜像的列表;判断该待部署的镜像对应的容器的已部署数量,与待部署的镜像对应的容器的预部署数量的大小关系;若该待部署的镜像对应的容器的已部署数量小于该待部署的镜像对应的容器的预部署数量,则根据各个节点的负载状态信息,选取未部署该待部署的镜像的负载最低的节点用于部署该待部署的镜像。需要说明的是,步骤208中,除了获取各个节点的负载状态信息以及各个节点已部署的镜像的列表之外,还获取了各个节点的容器的部署情况,其中包括了关于各个节点部署的容器的数量,以及这些容器的类型,即这些容器对应的镜像的类型。例如,步骤206中确定容器A的预部署数量为50个,获取各个节点上已经部署了的容器A的数量,如果该数量少于50个,则还需要选取新的节点用于部署该待部署的镜像,如果该待部署的镜像对应的容器的已部署数量不小于该待部署的镜像对应的容器的预部署数量,则无须再选取节点来部署该待部署的镜像。步骤208中,选取了未部署该待部署的镜像的节点中负载最低的节点后,如果该节点的剩余资源不够支撑P个容器,此处的P为该待部署的镜像对应的容器的预部署数量与该待部署的镜像对应的容器的已部署数量之差,则步骤208中还需再次选取未部署该待部署的镜像的负载次低的节点用于部署该待部署的镜像。该选取过程不断重复,直至选取的用于部署该待部署的镜像的节点的剩余资源足够支撑P个容器的启用。上述各个节点的负载状态信息包括了节点的标识,以及该节点对应的负载状态,例如CPU利用率,内存利用率等,如表3;各个节点已部署的镜像的列表包括了节点的标识与该节点已经部署了的镜像的标识的对应关系,如表4。通过各个节点已部署的镜像的列表可以获得各个镜像标识对应的镜像的已部署数量。节点标识CPU利用率内存利用率130%50%340%60%表3节点标识镜像标识1A、E3B、C表4步骤202至步骤208可以均由镜像部署装置执行,则步骤208中需要从容器资源管理平台获取各个节点的负载状态信息、各个节点已部署的镜像的列表,随后镜像部署装置获取了各个待部署的镜像的标识,与需要部署该待部署的镜像的节点的标识后,如表5,将该表发送至容器资源管理平台,以使得容器资源管理平台根据该表指示节点1、节点3从镜像库中获取镜像标识为E的镜像,节点1、节点5从镜像库中获取镜像标识为F的镜像。步骤202至步骤206可以均由镜像部署装置执行,步骤208由容器资源管理平台执行,则步骤206中获取了该待部署的镜像对应的容器的预部署数量后将其发送至容器资源管理平台,容器资源管理平台执行步骤208后获取了各个待部署的镜像的标识,与需要部署该待部署的镜像的节点的标识后,如表5,指示节点1、节点3从镜像库中获取镜像标识为E的镜像,节点1、节点5从镜像库中获取镜像标识为F的镜像。镜像标识节点标识E节点1、节点3F节点1、节点5表5上述实施例提供了一种镜像的部署方法,通过获取各个镜像对应的容器的自动伸缩策略或复制控制策略,来选择出待部署的镜像的标识,并确定部署这些镜像的节点,以使得这些节点能够在启动对应的容器之前,就能够从镜像库中获取对应的镜像,避免了节点启动容器时需要从镜像库中下载镜像的耗时,提升了启动容器的效率。装置实施例本装置实施例详细阐述一种镜像部署装置400,该装置常用于容器的部署及应用系统中,其组成结构示意图如图2所示,包括:接收单元402,用于获取容器的配置策略,容器的配置策略包括自动伸 缩策略或复制控制策略,自动伸缩策略包括第一镜像标识、第一镜像标识对应的容器的最大部署数量、第一镜像标识对应的容器的当前部署数量,复制控制策略包括第二镜像标识、第二镜像标识对应的容器的部署数量。具体的,接收单元402用于执行方法实施例中的步骤202及步骤202的所有可选方法。可选的,接收单元402还用于获取镜像的热度信息,镜像的热度信息包括第三镜像标识以及第三镜像标识对应的镜像的热门指数。处理单元404,用于根据接收单元402获取的容器的配置策略确定待部署的镜像的标识。具体的,处理单元404用于执行方法实施例中的步骤204及步骤204的所有可选方法,以及步骤206及步骤206的所有可选方法。可选的,接收单元402获取了镜像的热度信息的情况下,处理单元404还用于根据镜像的热度信息,确定待部署的镜像的标识。可选的,处理单元404在获取了待部署的镜像的标识后,还根据所述待部署的镜像的标识对应的容器的配置策略,确定所述待部署的镜像对应的容器的预部署数量。可选的,接收单元402获取了镜像的热度信息的情况下,处理单元404在获取了待部署的镜像的标识后,还用于根据所述待部署的镜像的标识对应的容器的配置策略和所述待部署的镜像的热度信息,确定所述待部署的镜像对应的容器的预部署数量。可选的,镜像部署装置400还包括选择单元406,用于执行方法实施例中的步骤208即步骤208的所有细节。选择单元406,用于获取各个节点的负载状态信息以及各个节点已部署的镜像的列表;判断所述待部署的镜像对应的容器的已部署数量,与所述待部署的镜像对应的容器的预部署数量的大小关系;若所述待部署的镜像对应的容器的已部署数量小于所述待部署的镜像对应的容器的预部署数量,则根据各个节点的负载状态信息,选取未部署所述待部署的镜像的负载最低的节点用于部署所述待部署的镜像。需要说明的是,选择单元406除了获取各个节点的负载状态信息以及各 个节点已部署的镜像的列表之外,还获取了各个节点的容器的部署情况,其中包括了关于各个节点部署的容器的数量,以及这些容器的类型,即这些容器对应的镜像的类型。实际使用中,镜像部署装置400的各个单元的部署可以有以下两种方式:方式1:接收单元402和处理单元404和选择单元406均位于一个单独的管理装置中,该管理装置需要定期或触发性的从容器资源管理平台获取各个节点的负载状态信息、各个节点已部署的镜像的列表,该管理装置获取了各个待部署的镜像的标识,与需要部署该待部署的镜像的节点的标识后,如表5,将该表发送至容器资源管理平台,以使得容器资源管理平台根据该表指示节点1、节点3从镜像库中获取镜像标识为E的镜像,节点1、节点5从镜像库中获取镜像标识为F的镜像。方式2:接收单元402和处理单元404位于一个单独的管理装置中,选择单元406位于容器资源管理平台,则处理单元404获取了该待部署的镜像对应的容器的预部署数量后将其发送至选择单元406,选择单元406从资源管理平台直接获取各个待部署的镜像的标识,与需要部署该待部署的镜像的节点的标识后,如表5,指示节点1、节点3从镜像库中获取镜像标识为E的镜像,节点1、节点5从镜像库中获取镜像标识为F的镜像。上述实施例提供了一种镜像的部署装置,该装置通过获取各个镜像对应的容器的自动伸缩策略或复制控制策略,来选择出待部署的镜像的标识,并确定部署这些镜像的节点,以使得这些节点能够在启动对应的容器之前,就能够从镜像库中获取对应的镜像,该装置的使用避免了节点启动容器时需要从镜像库中下载镜像的耗时,提升了启动容器的效率。系统实施例本系统实施例详细阐述一种计算机系统600,该系统常用于容器的部署及应用系统中,其组成结构示意图如图3所示,包括:处理器602,存储器604和总线606,其中,处理器602和存储器604通过总线606通信。存储器604用于存储计算机执行指令,处理器602用于执行存储器604存储的计算机执行指令;处理器602还用于获取容器的配置策略,所述容器的配置策略包括自动 伸缩策略或复制控制策略,所述自动伸缩策略包括第一镜像标识、所述第一镜像标识对应的容器的最大部署数量、所述第一镜像标识对应的容器的当前部署数量,所述复制控制策略包括第二镜像标识、所述第二镜像标识对应的容器的部署数量;根据所述容器的配置策略确定待部署的镜像的标识。实际使用中,处理器602执行存储器604存储的计算机执行指令后,运行了方法实施例中的步骤202至步骤204,以及步骤202的各个可选动作和步骤204的各个可选动作。可选的,处理器602还用于获取镜像的热度信息,所述镜像的热度信息包括第三镜像标识以及所述第三镜像标识对应的镜像的热门指数;所述根据所述容器的配置策略确定待部署的镜像的标识还包括:根据所述镜像的热度信息,确定所述待部署的镜像的标识。可选的,处理器602还用于根据所述待部署的镜像的标识对应的容器的配置策略,确定所述待部署的镜像对应的容器的预部署数量。即处理器602还用于执行方法实施例中的步骤206及其各个可选动作。可选的,处理器602还用于根据所述待部署的镜像的标识对应的容器的配置策略和所述待部署的镜像的热度信息,确定所述待部署的镜像对应的容器的预部署数量。可选的,处理器602还用于获取各个节点的负载状态信息以及各个节点已部署的镜像的列表;判断所述待部署的镜像对应的容器的已部署数量,与所述待部署的镜像对应的容器的预部署数量的大小关系;若所述待部署的镜像对应的容器的已部署数量小于所述待部署的镜像对应的容器的预部署数量,则根据各个节点的负载状态信息,选取未部署所述待部署的镜像的负载最低的节点用于部署所述待部署的镜像。即处理器602还用于执行方法实施例中的步骤208。需要说明的是,处理器602,除了获取各个节点的负载状态信息以及各个节点已部署的镜像的列表之外,还获取了各个节点的容器的部署情况,其中包括了关于各个节点部署的容器的数量,以及这些容器的类型,即这些容器对应的镜像的类型。上述实施例提供了一种计算机系统,该系统通过获取各个镜像对应的容器的自动伸缩策略或复制控制策略,来选择出待部署的镜像的标识,并确定部署这些镜像的节点,以使得这些节点能够在启动对应的容器之前,就能够从镜像库中获取对应的镜像,该系统的使用避免了节点启动容器时需要从镜像库中下载镜像的耗时,提升了启动容器的效率。需要说明的是:对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和单元并不一定是本发明所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1