微服务发布方法、装置、存储介质和计算机设备与流程

文档序号:15567696发布日期:2018-09-29 03:43阅读:105来源:国知局
本发明涉及互联网
技术领域
,特别是涉及一种微服务发布方法、装置、存储介质和计算机设备。
背景技术
:微服务是一种由大型、复杂、长期运行的应用程序所构建的一组相互配合的服务。随着产品微服务化的进程,原来一个单一服务,可能会被拆分成数个或数十个组件。由于微服务的架构来源于网络架构,因此微服务组件基本都通过http或rpc协议对外提供服务,即每个微服务组件在启动运行的时候,都需要占用一个或多个端口。这使得微服务在该架构模式下,端口的管理非常复杂。经常出现不同端口重复分配使用或者端口随意使用造成主机资源管理混乱等问题。技术实现要素:基于此,有必要针对上述技术问题,提供一种能够有效对端口分配进行管理的微服务发布方法、装置、存储介质和计算机设备。一种微服务发布方法,所述方法包括:根据微服务发布请求为所述微服务分配端口规划信息表中的端口信息;在所述端口规划信息表中对已分配的端口信息进行标记;根据所述微服务发布请求获取预先为所述微服务构建的镜像,所述镜像中包含配置端口模板文件;将为所述微服务分配的端口信息和为所述微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据所述端口信息和所述配置端口模板文件生成所述微服务的配置文件;根据所述配置文件将所述微服务进行发布。在其中一个实施例中,在所述根据微服务发布请求为微服务分配端口规划信息表中的端口信息之前,包括:对未分配的端口信息进行规划;将规划后的端口信息录入所述端口规划信息表。在其中一个实施例中,在所述在所述端口规划信息表中对所述已分配的端口信息进行标记之后,包括:将所述标记的已分配的端口信息从所述端口规划信息表中删除。在其中一个实施例中,所述配置端口模板文件中配置端口信息的位置以占位符的形式进行替换;所述将为所述微服务分配的端口信息和为所述微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据所述端口信息和所述配置端口模板文件生成所述微服务的配置文件,包括:将所述微服务的端口信息和所述配置端口模板文件发送至对应的服务器上;在服务器上将所述配置端口模板文件中的占位符替换为所述微服务的端口信息,生成所述微服务的配置文件。在其中一个实施例中,所述在服务器上将所述配置端口模板文件中的占位符替换为所述微服务的端口信息,生成所述微服务的配置文件,包括:在所述在服务器上的docker容器中采用dockerize工具来将所述配置端口模板文件中的占位符替换为所述微服务的端口信息,生成所述微服务的配置文件。在其中一个实施例中,在所述根据所述微服务发布请求获取预先为所述微服务构建的镜像之前,包括:向项目构建中心发起项目构建请求,以使所述项目构建中心获取配置端口模板文件,将所述配置端口模板文件与所述微服务发布所需的软件包一起构建为所述微服务的镜像。一种微服务发布装置,所述装置包括:端口信息分配模块,用于根据微服务发布请求为所述微服务分配端口规划信息表中的端口信息;端口信息标记模块,用于在所述端口规划信息表中对已分配的端口信息进行标记;镜像获取模块,用于根据所述微服务发布请求获取预先为所述微服务构建的镜像,所述镜像中包含配置端口模板文件;配置文件生成模块,用于将为所述微服务分配的端口信息和为所述微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据所述端口信息和所述配置端口模板文件生成所述微服务的配置文件;发布模块,用于根据所述配置文件将所述微服务进行发布。在其中一个实施例中,所述装置还包括:端口信息规划模块,用于对未分配的端口信息进行规划;端口规划信息表生成模块,用于将规划后的端口信息录入所述端口规划信息表。一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:根据微服务发布请求为所述微服务分配端口规划信息表中的端口信息;在所述端口规划信息表中对已分配的端口信息进行标记;根据所述微服务发布请求获取预先为所述微服务构建的镜像,所述镜像中包含配置端口模板文件;将为所述微服务分配的端口信息和为所述微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据所述端口信息和所述配置端口模板文件生成所述微服务的配置文件;根据所述配置文件将所述微服务进行发布。一种计算机设备,所述计算机设备包括存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:根据微服务发布请求为所述微服务分配端口规划信息表中的端口信息;在所述端口规划信息表中对已分配的端口信息进行标记;根据所述微服务发布请求获取预先为所述微服务构建的镜像,所述镜像中包含配置端口模板文件;将为所述微服务分配的端口信息和为所述微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据所述端口信息和所述配置端口模板文件生成所述微服务的配置文件;根据所述配置文件将所述微服务进行发布。上述微服务发布方法、装置、存储介质和计算机设备,根据微服务发布请求为微服务分配端口规划信息表中的端口信息,在端口规划信息表中对已分配的端口信息进行标记。根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件。将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据端口信息和配置端口模板文件生成微服务的配置文件,根据配置文件将微服务进行发布。采用了端口规划信息表对端口进行了统一的管理,避免了端口随意使用而造成的混乱,同时将已分配的端口信息进行标记,避免了下次为服务分配端口的时候重复分配。再根据微服务的端口信息与配置端口模板文件生成进行微服务发布所需的配置文件,从而保证了微服务的正常发布。附图说明图1为一个实施例中微服务发布方法的应用环境图;图2为一个实施例中服务器的内部结构图;图3为一个实施例中微服务发布方法的流程图;图4为又一个实施例中微服务发布方法的流程图;图5为平台控制中心的配置管理页面的界面图;图6为图3中生成微服务的配置文件方法的流程图;图7为一个实施例中微服务发布方法的硬件架构图;图8为一个实施例中微服务发布装置的结构示意图;图9为又一个实施例中微服务发布装置的结构示意图;图10为再一个实施例中微服务发布装置的结构示意图;图11为图8中配置文件生成模块的结构示意图;图12为一个实施例中微服务发布装置的结构示意图。具体实施方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似改进,因此本发明不受下面公开的具体实施的限制。除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的
技术领域
的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。图1为一个实施例中,一种微服务的发布方法的应用环境图。如图1所示,该应用环境包括终端102、平台服务器104和服务器集群104。其中,终端102可以是平板电脑、笔记本电脑、台式计算机等终端。终端102和平台服务器104通过网络连接,平台服务器104和服务器集群106通过网络连接。平台服务器104接收终端102发送的微服务发布请求,平台服务器104根据微服务发布请求为微服务分配端口规划信息表中的端口信息,在端口规划信息表中对已分配的端口信息进行标记。平台服务器104根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件。平台服务器104将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器集群106上,以根据端口信息和配置端口模板文件生成微服务的配置文件,根据配置文件将微服务进行发布。在一个实施例中,如图2所示,还提供了一种服务器,该服务器包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口等。其中,该服务器的非易失性存储介质中存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种微服务发布方法。该服务器的处理器用于提高计算和控制能力,支撑整个服务器的运行。该服务器的内存储器中可储存有计算机程序,该计算机程序被处理器执行时,可使得该处理器执行一种微服务发布方法。网络接口用于与终端进行网络通信,接收或发送数据,例如接收终端发送的微服务发布的请求,以及将微服务的端口信息和配置端口模板文件发送至服务器集群上等。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。在一个实施例中,如图3所示,提供了一种微服务发布方法,以该方法应用于图1中的平台服务器为例进行说明,包括:步骤302,根据微服务发布请求为微服务分配端口规划信息表中的端口信息。平台服务器包括很多个服务器实现多个功能,例如包括平台控制中心、配置管理数据库、模板管理中心、项目构建中心、镜像仓库、调度中心等对应的服务器,共同来实现微服务发布。在进行微服务发布之前,平台服务器中的平台控制中心对未分配的端口信息进行规划,将规划后的端口信息录入端口规划信息表。具体的,从未分配的端口信息中挑选出可以进行微服务发布使用的端口地址的范围。服务器端的端口号是固定的(服务器只要开着,对应的服务就一直运行着),端口号一般系统中对应于知名的1-1023之间,这些知名端口号由internet号分配机构(internetassignednumbersauthority,iana)来管理。而客户端的端口号只有用户开启相应的程序时才打开对应的端口号(因此也称临时端口号),大多数给临时端口号分配1024~5000之间的端口号。大于5000的端口号是为其他服务预留的(internet上不常用的服务)。本实施例中,一般从端口地址在8000-10000之间的未分配端口地址中分配一个端口段,将这个端口段内的端口信息录入至配置管理数据库(cmdb,configurationmanagementdatabase)中,形成端口规划信息表。例如,端口规划信息表中需要录入的信息有:微服务对应的公司名称、所属环境(开发、测试、预发布、生产等),起始端口地址(如8000),结束端口地址(8200)。终端向平台服务器发送微服务发布请求,平台服务器中的平台控制中心接收微服务发布请求,并根据微服务发布请求从cmdb中获取到端口规划信息表,为微服务分配端口规划信息表中的端口信息。并将分配的端口信息回传给cmdb,cmdb接收的已分配的端口信息后,会将已分配的端口信息存入服务配置信息表中,存储在服务配置信息表中的信息有:公司名称、服务部署环境、服务名称、配置属性、配置文件名称、配置项名称、配置项内容、服务版本号。步骤304,在端口规划信息表中对已分配的端口信息进行标记。在为微服务分配了端口信息之后,平台控制中心将分配的端口信息回传给cmdb,cmdb接收的已分配的端口信息。因为已分配的端口信息不能再重复分配,所以需要在端口规划信息表中对已分配的端口信息进行标记,以避免重复分配。标记的方式,可以是为已分配的端口信息设置了标签,标签就表明了该端口信息已分配,不能再次进行分配使用。或者,标记也可以采用锁定已分配的端口信息使之不能够被分配的方式。步骤306,根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件。在为微服务分配了端口信息之后,平台服务器的调度中心根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件。镜像是一种文件存储形式,可以把许多文件做成一个镜像。一个磁盘上的数据在另一个磁盘上存在一个完全相同的副本,这个副本即为镜像,其中,镜像可以是docker镜像。步骤308,将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据端口信息和配置端口模板文件生成微服务的配置文件。平台服务器的调度中心从cmdb中的服务配置信息表中获取为微服务分配的端口信息,并获取预先为微服务构建的镜像。将获取的为微服务分配的端口信息和为微服务构建的镜像发送至对应的服务器集群中的服务器上,使得在服务器上生成微服务的配置文件。步骤310,根据配置文件将微服务进行发布。根据生成的配置文件,将微服务进行发布。微服务的配置文件包括:配置项名称和配置项内容等。本实施例中,根据微服务发布请求为微服务分配端口规划信息表中的端口信息,在端口规划信息表中对已分配的端口信息进行标记。根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件。将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据端口信息和配置端口模板文件生成微服务的配置文件,根据配置文件将微服务进行发布。采用了端口规划信息表对端口进行了统一的管理,避免了端口随意使用而造成的混乱,同时将已分配的端口信息进行标记,避免了下次为服务分配端口的时候重复分配。再根据微服务的端口信息与配置端口模板文件生成进行微服务发布所需的配置文件,从而保证了微服务的正常发布。在一个实施例中,在根据微服务发布请求为微服务分配端口规划信息表中的端口信息之前,包括:对未分配的端口信息进行规划;将规划后的端口信息录入端口规划信息表。在根据微服务发布请求为微服务分配端口规划信息表中的端口信息之前,平台服务器中的平台控制中心对未分配的端口信息进行规划,将规划后的端口信息录入端口规划信息表。具体的,从未分配的端口信息中挑选出可以进行微服务发布使用的端口地址的范围。服务器端的端口号是固定的(服务器只要开着,对应的服务就一直运行着),端口号一般系统中对应于知名的1-1023之间,这些知名端口号由internet号分配机构(internetassignednumbersauthority,iana)来管理。而客户端的端口号只有用户开启相应的程序时才打开对应的端口号(因此也称临时端口号),大多数给临时端口号分配1024~5000之间的端口号。大于5000的端口号是为其他服务预留的(internet上不常用的服务)。本实施例中,一般从端口地址在8000-10000之间的未分配端口地址中分配一个端口段,将这个端口段内的端口信息录入至配置管理数据库(cmdb,configurationmanagementdatabase)中,形成端口规划信息表。例如,端口规划信息表中需要录入的信息有:微服务对应的公司名称、所属环境(开发、测试、预发布、生产等),起始端口地址(如8000),结束端口地址(8200)。在本实施例中,在进行微服务发布之前,对能够给微服务分配的端口进行规划。具体的,先分配一个端口范围,先将这些处于端口范围内的端口信息都录入端口规划信息表中,并将端口规划信息表存储在配置管理数据库cmdb中,方便读取和写入。当每次对一个微服务进行发布时,从端口规划信息表中获取未分配的端口进行分配,这样统一进行管理,在端口分配非常有条理,且效率较高。在一个实施例中,如图4所示,在在端口规划信息表中对已分配的端口信息进行标记之后,包括:步骤305,将标记的已分配的端口信息从端口规划信息表中删除。平台控制中心将分配的端口信息回传给cmdb,cmdb接收的已分配的端口信息。平台控制中心再在端口规划信息表中将已分配的端口信息进行标记,标记后就可以实现在下次进行端口分配时,避免重复分配。当然,也可以在标记后增加一步,将端口规划信息表中标记的已分配的端口信息,从端口规划信息表中删除。删除后,当然在下次进行端口分配时,根本就不会出现在备选的端口信息中,彻底地避免了重复分配的可能性。如图5所示,为平台控制中心的配置管理页面的界面图。当为第一个微服务分配了8700的端口信息之后,在为第2个微服务分配端口信息时,端口信息的下拉菜单中就不再出现8700这个已分配的端口,所以彻底地避免了端口的重复分配。在本实施例中,直接将标记的已分配的端口信息从端口规划信息表中删除,从而在源头上对备选的端口信息进行了处理,从而每次在从端口规划信息表中进行端口分配时,端口规划信息表中都是未分配的端口。因此,就可以避免了对端口进行重复分配而导致的不便。在一个实施例中,如图6所示,配置端口模板文件中配置端口信息的位置以占位符的形式进行替换;将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据端口信息和配置端口模板文件生成微服务的配置文件,包括:步骤602,将微服务的端口信息和配置端口模板文件发送至对应的服务器上。占位符就是先占住一个固定的位置,可以往这个位置里面添加内容的符号,广泛用于计算机中各类文档的编辑。从镜像中获取到的配置端口模板文件中配置端口信息的位置是以占位符的形式进行替换,方便后续将端口信息添加至占位符所在的位置。将从服务配置信息表中分配的端口信息、从镜像中获取的配置端口模板文件发送至对应的服务器集群中。步骤604,在服务器上将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在服务器集群中的服务器上,将从服务配置信息表中获取的端口信息以环境变量参数值的方式在服务器中的容器中启动,传入容器中。其中,容器可以是docker容器。docker容器在启动服务之前,会使用dockerize工具,结合镜像中复制的配置端口模板文件与接收到的环境变量参数值,生成与微服务对应的配置文件。在本实施例中,在配置端口模板文件中采用占位符的形式来替换端口信息,因此可以将生成配置文件的过程拆分为配置端口模板文件和分配端口信息这两个步骤,使得可以统一使用配置端口模板文件,不需要每次都对配置端口模板文件进行设置。再将端口信息添加至配置端口模板文件中即可生成最终的用于微服务发布的配置文件。大大地简化了操作,提高了效率。在一个实施例中,在服务器上将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件,包括:在服务器上的docker容器中采用dockerize工具来将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。docker容器是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的linux机器上,也可以实现虚拟化,docker容器不依赖于任何语言、框架及系统。dockerize是一个小型的golang应用,可以根据指定的模板路径跟环境变量信息生成配置文件。在本实施例中,在服务器上根据获取的端口信息和配置端口模板文件生成最终的用于微服务发布的配置文件,采用的是服务器上docker容器中的dockerize工具,通过dockerize工具来将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在一个实施例中,在根据微服务发布请求获取预先为微服务构建的镜像之前,包括:向项目构建中心发起项目构建请求,以使项目构建中心获取配置端口模板文件,将配置端口模板文件与微服务发布所需的软件包一起构建为微服务的镜像。在本实施例中,平台控制中心接收微服务发布请求,并根据微服务发布请求向项目构建中心发起镜像构建请求。项目构建中心再从模板管理中心中获取配置端口模板文件用于构建微服务对应的镜像,具体的,项目构建中心将获取的配置端口模板文件复制至所构建的镜像中,并将微服务发布所需的软件包也复制至镜像中进行构建镜像。在镜像构建完成后,将已构建好的镜像上传至镜像仓库中,供微服务发布时调用镜像使用。启动镜像可以实例化成一个容器,这里可以理解成一个轻量级的虚拟机。在一个实施例中,如图7所示,提供了一种微服务发布方法的硬件架构图。该应用环境包括终端710、平台服务器720和服务器集群730。平台服务器710包括很多个服务器实现多个功能,例如包括平台控制中心711、配置管理数据库cmdb712、模板管理中心713、项目构建中心714、镜像仓库715、调度中心717等对应的服务器,共同来实现微服务发布。服务器集群730中运行了很多台主机host,例如host1、host2、host3、host4等。主机host中运行了多个容器即container,在图7中用c表示容器。还提供了一种微服务发布方法,应用于图7所示的应用环境图中,包括以下步骤:(1)在进行微服务发布之前,平台服务器中的平台控制中心对未分配的端口信息进行规划,将规划后的端口信息存储在cmdb中的端口规划信息表。端口规划信息表中的内容见下表所示:端口规划信息表,表名——port_info(2)终端向平台服务器发送微服务发布请求,平台服务器中的平台控制中心接收微服务发布请求,并根据微服务发布请求从cmdb中获取到端口规划信息表,并为微服务分配端口规划信息表中的端口信息。(3)平台控制中心将分配的端口信息回传给cmdb,cmdb接收的已分配的端口信息后,会将已分配的端口信息存入服务配置信息表中。存储在服务配置信息表中的内容见下表所示:服务配置信息表,表名config_info字段名称字段类型字段描述主/外键默认值idint(8)自增长id主键companynamevarchar(100)公司名称servicenamevarchar(100)服务名称envtypevarchar(100)所属环境versionvarchar(100)版本号contypevarchar(100)配置属性connamevarchar(100)配置文件名称keynamevarchar(100)配置项名称(占位符名称)(4)在为微服务分配了端口信息之后,平台控制中心将分配的端口信息回传给cmdb,cmdb接收的已分配的端口信息。因为已分配的端口信息不能再重复分配,所以需要在端口规划信息表中对已分配的端口信息进行标记,标记的方式可以是在端口规划信息表中删除已分配的端口信息。(5)平台控制中心上传需要配置端口的模板文件到模板管理中心,该文件即为配置端口模板文件。并且将文件中的配置端口的位置以一定格式占位符的形式替换。(6)平台控制中心接收微服务发布请求,并根据微服务发布请求向项目构建中心发起镜像构建请求。项目构建中心再从模板管理中心中获取配置端口模板文件用于构建微服务对应的镜像。项目构建中心将获取的配置端口模板文件复制至所构建的镜像中,并将微服务发布所需的软件包也复制至镜像中进行构建镜像。在镜像构建完成后,将已构建好的镜像上传至镜像仓库中,供微服务发布时调用镜像使用。(7)平台服务器的调度中心从cmdb中的服务配置信息表中获取为微服务分配的端口信息,并从镜像仓库中获取预先为微服务构建的镜像。镜像中包含配置端口模板文件,且配置端口模板文件中配置端口信息的位置是以占位符的形式进行替换了的,以便后续将端口信息添加至占位符所在的位置。将微服务的端口信息和配置端口模板文件发送至服务器集群中的对应的主机上。(8)在服务器集群的主机上根据获取的端口信息和配置端口模板文件生成最终的用于微服务发布的配置文件,采用的是服务器上docker容器中的dockerize工具,通过dockerize工具来将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。(9)根据生成的配置文件,将微服务进行发布。在一个实施例中,如图8所示,还提供了一种微服务发布装置800,该装置包括:端口信息分配模块802、端口信息标记模块804、镜像获取模块808、配置文件生成模块808及发布模块808。端口信息分配模块802,用于根据微服务发布请求为微服务分配端口规划信息表中的端口信息。端口信息标记模块804,用于在端口规划信息表中对已分配的端口信息进行标记。镜像获取模块806,用于根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件。配置文件生成模块808,用于将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据端口信息和配置端口模板文件生成微服务的配置文件。发布模块810,用于根据配置文件将微服务进行发布。在一个实施例中,如图9所示,还提供了一种微服务发布装置900还包括:端口信息规划模块902及端口规划信息表生成模块904。端口信息规划模块902,用于对未分配的端口信息进行规划。端口规划信息表生成模块904,用于将规划后的端口信息录入端口规划信息表。在一个实施例中,如图10所示,一种微服务发布装置800还包括:删除模块805,将标记的已分配的端口信息从端口规划信息表中删除。在一个实施例中,如图11所示,配置文件生成模块808还包括:发送模块808a,用于将微服务的端口信息和配置端口模板文件发送至对应的服务器上。替换模块808b,用于在服务器上将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在一个实施例中,替换模块808b还用于在在服务器上的docker容器中采用dockerize工具来将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在一个实施例中,如图12所示,一种微服务发布装置800还包括:镜像构建模块801,用于向项目构建中心发起项目构建请求,以使项目构建中心获取配置端口模板文件,将配置端口模板文件与微服务发布所需的软件包一起构建为微服务的镜像。在一个实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:根据微服务发布请求为微服务分配端口规划信息表中的端口信息;在端口规划信息表中对已分配的端口信息进行标记;根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件;将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据端口信息和配置端口模板文件生成微服务的配置文件;根据配置文件将微服务进行发布。在一个实施例中,上述程序被处理器执行时还实现以下步骤:对未分配的端口信息进行规划;将规划后的端口信息录入端口规划信息表。在一个实施例中,上述程序被处理器执行时还实现以下步骤:将标记的已分配的端口信息从端口规划信息表中删除。在一个实施例中,上述程序被处理器执行时还实现以下步骤:将微服务的端口信息和配置端口模板文件发送至对应的服务器上;在服务器上将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在一个实施例中,上述程序被处理器执行时还实现以下步骤:在在服务器上的docker容器中采用dockerize工具来将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在一个实施例中,上述程序被处理器执行时还实现以下步骤:向项目构建中心发起项目构建请求,以使项目构建中心获取配置端口模板文件,将配置端口模板文件与微服务发布所需的软件包一起构建为微服务的镜像。在一个实施例中,还提供了一种计算机设备,该计算机设备包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:根据微服务发布请求为微服务分配端口规划信息表中的端口信息;在端口规划信息表中对已分配的端口信息进行标记;根据微服务发布请求获取预先为微服务构建的镜像,镜像中包含配置端口模板文件;将为微服务分配的端口信息和为微服务构建的镜像中的配置端口模板文件发送至对应的服务器上,以根据端口信息和配置端口模板文件生成微服务的配置文件;根据配置文件将微服务进行发布。在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:对未分配的端口信息进行规划;将规划后的端口信息录入端口规划信息表。在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:将标记的已分配的端口信息从端口规划信息表中删除。在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:将微服务的端口信息和配置端口模板文件发送至对应的服务器上;在服务器上将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:在在服务器上的docker容器中采用dockerize工具来将配置端口模板文件中的占位符替换为微服务的端口信息,生成微服务的配置文件。在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:向项目构建中心发起项目构建请求,以使项目构建中心获取配置端口模板文件,将配置端口模板文件与微服务发布所需的软件包一起构建为微服务的镜像。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性的计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1