[go: up one dir, main page]

CN115658109A - Microservice hot deployment method, system, electronic device and storage medium - Google Patents

Microservice hot deployment method, system, electronic device and storage medium Download PDF

Info

Publication number
CN115658109A
CN115658109A CN202211338090.6A CN202211338090A CN115658109A CN 115658109 A CN115658109 A CN 115658109A CN 202211338090 A CN202211338090 A CN 202211338090A CN 115658109 A CN115658109 A CN 115658109A
Authority
CN
China
Prior art keywords
application
class loader
service
application package
package
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
CN202211338090.6A
Other languages
Chinese (zh)
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.)
Yuanguang Software Co Ltd
Original Assignee
Yuanguang Software 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 Yuanguang Software Co Ltd filed Critical Yuanguang Software Co Ltd
Priority to CN202211338090.6A priority Critical patent/CN115658109A/en
Publication of CN115658109A publication Critical patent/CN115658109A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

The embodiment of the application provides a method, a system, electronic equipment and a storage medium for deploying micro service heat, wherein the method comprises the steps of obtaining an application package, storing the application package in a storage device, loading the application package in the storage device to a specified file directory, creating a class loader of the application package, setting the class loader of an application driving file as the class loader created by the class loader of the application package, and loading the application driving file; the initialized spring boot container is associated with the application metadata, the associated comparison table is stored in the program context, the spring boot container is externally issued according to the rule of the spring external issuing service and is provided for external access, and the non-stop updating service can be realized, so that the condition that the whole application service is in an unavailable state due to the stop updating is avoided.

Description

微服务热部署方法、系统、电子设备和存储介质Microservice hot deployment method, system, electronic device and storage medium

技术领域technical field

本发明涉及微服务技术领域,尤其涉及一种基于Spring Boot的微服务热部署方法、系统、电子设备和存储介质。The present invention relates to the technical field of microservices, in particular to a Spring Boot-based microservice hot deployment method, system, electronic device and storage medium.

背景技术Background technique

随着微服务架构的兴起,传统的OSGI技术模块化单体架构逐渐被抛弃,以Springboot开发微服务应用技术在业内越来越广泛,微服务虽然可以通过合理划分服务边界来实现局部服务更新,但仍然无法满足某些业务场景下需要热部署的需求,如在不停机的情况下,实现缺陷修复、新功能上线。With the rise of the microservice architecture, the traditional OSGI technology modular single architecture is gradually abandoned, and the development of microservice application technology with Springboot is becoming more and more widespread in the industry. Although microservices can achieve local service updates by reasonably dividing service boundaries, However, it still cannot meet the needs of hot deployment in certain business scenarios, such as implementing bug fixes and launching new functions without downtime.

业内目前一般更新部署应用的步骤为:先将旧的应用停止,并且备份,然后上传新的应用,更新配置等,然后启动新的应用。对于需要频繁更新应用当中部分接口服务的系统来说,会有几个问题:At present, the general steps for updating and deploying applications in the industry are: first stop the old application, and back it up, then upload the new application, update the configuration, etc., and then start the new application. For systems that need to frequently update some interface services in the application, there will be several problems:

1.应用文件的版本不好管理,新旧版本文件内容的差别可能只是多或者少些jar包,但更新一个接口就会导致产生一个应用包文件,备份占用太多的空间,并且管理起来也变得混乱。1. The version of the application file is not easy to manage. The difference between the old and new versions of the file content may be more or less jar packages, but updating an interface will result in an application package file, and the backup takes up too much space, and it also becomes difficult to manage. Get confused.

2.这种更新必须停止服务,再启动新的服务,频繁停机更新部署是会严重影响系统的运行,绝大部分企业都有固定的停机维护更新时间,也根本不允许这样频繁更新。2. This kind of update must stop the service, and then start a new service. Frequent downtime for update deployment will seriously affect the operation of the system. Most companies have fixed downtime for maintenance and update time, and such frequent updates are not allowed at all.

业内有如servicemix框架支持热部署应用,但其已已经停更多年了,而且无法兼容现在的Spring boot应用,并且其遵循的JBI规范已不适应微服务架构。In the industry, there is a servicemix framework that supports hot deployment applications, but it has been stopped for more than a few years, and it is not compatible with the current Spring boot application, and the JBI specification it follows is no longer suitable for the microservice architecture.

发明内容Contents of the invention

本发明提供了微服务热部署方法、系统、电子设备和存储介质,能够实现在不停机的状态下更新服务。The invention provides a microservice hot deployment method, system, electronic equipment and storage medium, capable of updating services without stopping.

本发明的技术方案为:Technical scheme of the present invention is:

第一方面,本申请实施例提供了一种微服务热部署方法,其特征在于,所述方法包括:In the first aspect, the embodiment of the present application provides a microservice hot deployment method, characterized in that the method includes:

获取应用包,所述应用包至少包括满足spring boot框架服务的配置文件信息、内容符合spring boot标准并约定好目录规则的应用驱动文件及可标识配置内容的应用元数据;Obtaining an application package, the application package at least includes configuration file information satisfying the spring boot framework service, an application driver file whose content conforms to the spring boot standard and agreed directory rules, and application metadata that can identify the configuration content;

保存所述应用包到存储装置,并装载存储装置中的应用包到指定文件目录;saving the application package to a storage device, and loading the application package in the storage device to a specified file directory;

创建应用包的类加载器,并将该类加载器装载到主应用程序所在的类加载器集合中,并设置其类加载器的类型;Create the class loader of the application package, load the class loader into the class loader collection where the main application is located, and set the type of its class loader;

设置应用驱动文件的类加载器为所述创建应用包的类加载器创建的类加载器,使用所述类加载器装载所述应用驱动文件;Setting the class loader of the application driver file as the class loader created by the class loader for creating the application package, using the class loader to load the application driver file;

使用spring boot初始化应用包获得spring boot容器,将spring boot容器与应用元数据建立关联,将建立关联的对照表保存在程序上下文中;Use spring boot to initialize the application package to obtain the spring boot container, associate the spring boot container with application metadata, and save the associated comparison table in the program context;

刷新spring boot容器内的服务资源引用,按照spring对外发布服务的规则,生成服务的定义,对外发布。Refresh the service resource reference in the spring boot container, generate the service definition according to the rules of spring's external publishing service, and publish it externally.

优选地,所述满足spring boot框架服务的配置文件信息至少包括 spring boot框架的服务地址、名称、参数、返回数据。Preferably, the configuration file information satisfying the spring boot framework service at least includes the service address, name, parameters, and return data of the spring boot framework.

优选地,所述应用包通过maven、ant或gradle构建工具构建,并且构建出的程序包为jar包。Preferably, the application package is constructed by maven, ant or gradle construction tools, and the constructed program package is a jar package.

优选地,创建应用包的类加载器的具体方法包括:Preferably, the specific method for creating the class loader of the application package includes:

创建UrlClassLoader实例;Create a UrlClassLoader instance;

将应用包添加到实例的url集合中,设置其类加载器为启动类加载器。Add the application package to the url collection of the instance, and set its class loader as the startup class loader.

优选地,所述应用驱动文件为springContext.xml格式的应用驱动文件。Preferably, the application driver file is an application driver file in springContext.xml format.

优选地,所述应用元数据信息至少包括应用名称、应用标识、应用版本、服务信息和配置信息中的一种,其中,所述服务信息至少包括对外的服务数量、服务描述和服务类型中的一种,所述配置信息至少包括配置文件、数据源、系统参数、依赖服务信息中的一种。Preferably, the application metadata information includes at least one of application name, application identifier, application version, service information and configuration information, wherein the service information includes at least one of external service quantity, service description and service type One, the configuration information includes at least one of configuration files, data sources, system parameters, and dependent service information.

优选地,在将所述应用包保存到存储装置之前,还需要上传所述应用包,所述应用包在上传后,还需要对所述应用包进行效验,效验的内容至少包括应用驱动文件是否存在、应用元数据是否存在,且应用标识是否被使用、配置文件信息中要求的配置项是否满足中的一项。Preferably, before saving the application package to the storage device, the application package needs to be uploaded, and after the application package is uploaded, the application package needs to be validated, and the content of the validation includes at least whether the application driver file is Existence, whether the application metadata exists, whether the application identifier is used, and whether the configuration items required in the configuration file information meet one of the requirements.

进一步地,所述方法还包括所述应用驱动文件的停止应用的方法,具体包括:Further, the method also includes a method for stopping the application of the application driver file, specifically including:

通过所述应用标识与spring容器的关系,获取spring容器;Acquire the spring container through the relationship between the application identifier and the spring container;

使用spring boot销毁spring容器;Use spring boot to destroy the spring container;

关闭容器使用的类加载器;Close the class loader used by the container;

刷新spring boot容器内的服务资源引用,将对外声明的服务路径与应用包的执行逻辑关系解除。Refresh the service resource reference in the spring boot container, and release the execution logic relationship between the externally declared service path and the application package.

进一步地,所述方法还包括所述应用驱动文件的卸载方法,具体包括在执行完所述停止应用的步骤后,再删除储存装置中的应用包。Further, the method further includes a method for uninstalling the application driver file, which specifically includes deleting the application package in the storage device after the step of stopping the application is executed.

第二方面,本申请实施例还提供了一种微服务热部署系统,包括:In the second aspect, the embodiment of the present application also provides a microservice hot deployment system, including:

应用包获取单元,用于获取应用包,所述应用包至少包括满足spring boot框架服务的配置文件信息、内容符合spring boot标准并约定好目录规则的应用驱动文件及可标识配置内容的应用元数据;The application package obtaining unit is used to obtain the application package, and the application package at least includes configuration file information satisfying the spring boot framework service, an application driver file whose content conforms to the spring boot standard and agreed directory rules, and application metadata that can identify the configuration content ;

应用包装载单元,保存所述应用包到存储装置,并装载存储装置中的应用包到指定文件目录;An application package loading unit, saving the application package to a storage device, and loading the application package in the storage device to a specified file directory;

类加载器创建单元,用于创建应用包的类加载器,并将该类加载器装载到主应用程序所在的类加载器集合中,并设置其类加载器的类型;The class loader creation unit is used to create the class loader of the application package, load the class loader into the class loader collection where the main application program is located, and set the type of its class loader;

应用驱动文件装载单元,设置应用驱动文件类加载器为所述创建应用包的类加载器创建的类加载器,使用所述类加载器装载所述应用驱动文件;The application driver file loading unit is configured to set the application driver file class loader as the class loader created by the class loader for creating the application package, and use the class loader to load the application driver file;

应用元数据关联建立单元,在使用spring boot初始化应用包后获得的 springboot容器与应用元数据建立关联,将建立关联的对照表保存在程序上下文中;The application metadata association establishment unit, the springboot container obtained after using the spring boot to initialize the application package is associated with the application metadata, and the association comparison table is saved in the program context;

服务资源发布单元,刷新spring boot容器内的服务资源引用,按照 spring对外发布服务的规则,生成服务的定义,对外发布。The service resource release unit refreshes the service resource references in the spring boot container, generates service definitions according to the rules of spring external release services, and releases them externally.

第三方面,本申请实施例还提供了一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于有处理器加载并执行上述方法步骤。In a third aspect, the embodiment of the present application further provides a computer storage medium, where a plurality of instructions are stored in the computer storage medium, and the instructions are suitable for being loaded by a processor to execute the above method steps.

第四方面,本申请实施例还提供了一种电子设备,可包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述方法步骤。In a fourth aspect, the embodiment of the present application also provides an electronic device, which may include a processor and a memory, where the memory stores a computer program, and the computer program is adapted to be loaded by the processor and execute the above method steps.

本申请一些实施例提供的技术方案带来的有益效果至少包括:通过获取应用包,并保存所述应用包到存储装置再装载存储装置中的应用包到指定文件目录、创建应用包的类加载器,并将该类加载器装载到主应用程序所在的类加载器集合中,同时,设置应用驱动文件的类加载器为所述创建应用包的类加载器创建的类加载器,使用所述类加载器装载所述应用驱动文件;最后使用spring boot初始化应用包,将初始化后的spring boot容器与应用元数据建立关联,将建立关联的对照表保存在程序上下文中,通过刷新spring boot容器内的服务资源引用,按照spring对外发布服务的规则,生成服务的定义,对外发布,提供给外部访问,进而在软件升级或更新配置等应用时,可以实现不停机发布,注销,更新服务,从而避免停机更新导致整个应用服务处于不可用状态。The beneficial effects brought by the technical solution provided by some embodiments of the present application at least include: obtaining the application package, saving the application package to a storage device, loading the application package in the storage device to a specified file directory, and creating a class loading of the application package device, and load the class loader into the class loader set where the main application program is located, and at the same time, set the class loader of the application driver file as the class loader created by the class loader for creating the application package, using the The class loader loads the application driver file; finally, use spring boot to initialize the application package, associate the initialized spring boot container with the application metadata, save the associated comparison table in the program context, and refresh the spring boot container Service resource references, according to the rules of spring’s external publishing services, generate service definitions, publish them externally, and provide external access, and then when software upgrades or update configuration applications, it can be released, logged out, and updated services without stopping, thereby avoiding Downtime updates cause the entire application service to be unavailable.

附图说明Description of drawings

为了更清楚地说明本发明实施例,下面将对实施例或现有技术描述中所需要使用的附图做简单介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to illustrate the embodiments of the present invention more clearly, the accompanying drawings that need to be used in the descriptions of the embodiments or the prior art will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For Those of ordinary skill in the art can also obtain other drawings based on these drawings without making creative efforts.

图1为本发明实施例的方法主要步骤流程图;Fig. 1 is the flow chart of main steps of the method of the embodiment of the present invention;

图2为本发明实施例的方法的详细步骤流程图;Fig. 2 is the detailed flow chart of the method of the embodiment of the present invention;

图3为本发明实施例的系统框图;Fig. 3 is a system block diagram of an embodiment of the present invention;

图4为本发明实施例的装置结构框图。Fig. 4 is a block diagram of the device structure of the embodiment of the present invention.

以下结合附图对本发明的具体实施方式作进一步详细地说明。The specific implementation manners of the present invention will be described in further detail below in conjunction with the accompanying drawings.

具体实施方式Detailed ways

下面结合附图对本发明进行详细描述,在详述本发明实施例时,为便于说明,表示器件结构的附图会不依一般比例做局部放大,而且所述示意图只是示例,其在此不应限制本发明保护的范围。需要说明的是,附图采用简化的形式且均使用非精准的比例,仅用以方便、清晰地辅助说明本发明实施例的目的。The present invention will be described in detail below in conjunction with the accompanying drawings. When describing the embodiments of the present invention in detail, for the convenience of explanation, the accompanying drawings showing the structure of the device will not be partially enlarged according to the general scale, and the schematic diagram is only an example, and it should not be limited here. The protection scope of the present invention. It should be noted that the drawings are in simplified form and use inaccurate scales, which are only used to facilitate and clearly assist the purpose of illustrating the embodiments of the present invention.

需要说明的是,本申请提供的一种微服务热部署方法一般由计算机设备执行,相应的,兼容不同设备通讯交互的系统一般设置于计算机设备中。It should be noted that a microservice hot deployment method provided in this application is generally executed by computer equipment, and correspondingly, a system compatible with communication and interaction of different equipment is generally set in computer equipment.

本申请的计算机设备上可以安装有各种通讯客户端应用,例如:视频录制应用、视频播放应用、语音交互应用、搜索类应用、即时通讯工具、邮箱客户端、社交平台软件等。Various communication client applications can be installed on the computer equipment of this application, such as: video recording applications, video playback applications, voice interaction applications, search applications, instant messaging tools, email clients, social platform software, etc.

计算机设备可以是硬件,也可以是软件。当计算机设备为硬件时,可以是具有显示屏的各种计算机设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等等。当计算机设备为软件时,可以是安装上述所列举的计算机设备中。其可以实现呈多个软件或软件模块(例如:用来提供分布式服务),也可以实现成单个软件或软件模块,在此不作具体限定。Computer equipment can be either hardware or software. When the computer device is hardware, it can be various computer devices with display screens, including but not limited to smartphones, tablets, laptops, and desktops, among others. When the computer equipment is software, it can be installed in the computer equipment listed above. It can be implemented as multiple software or software modules (for example: for providing distributed services), or as a single software or software module, which is not specifically limited here.

当计算机设备为硬件时,其上还可以安装有显示设备和摄像头,显示设备显示可以是各种能实现显示功能的设备,摄像头用于采集视频流;例如:显示设备可以是阴极射线管显示器(cathode ray tube display,简称 CR)、发光二极管显示器(light-emittingdiode display,简称LED)、电子墨水屏、液晶显示屏(liquid crystal display,简称LCD)、等离子显示面板(plasma display panel,简称PDP)等。用户可以利用计算机设备上的显示设备,来查看显示的文字、图片、视频等信息。When the computer device is hardware, a display device and a camera can also be installed on it, and the display device display can be various devices that can realize display functions, and the camera is used to collect video streams; for example: the display device can be a cathode ray tube display ( cathode ray tube display (CR for short), light-emitting diode display (light-emitting diode display, LED for short), electronic ink screen, liquid crystal display (LCD for short), plasma display panel (plasma display panel, PDP for short), etc. . The user can use the display device on the computer device to view displayed text, pictures, video and other information.

为了便于理解,下面列举一个简单的示例来说明本发明实施例的应用场景。For ease of understanding, a simple example is given below to illustrate the application scenario of the embodiment of the present invention.

主应用程序中已经部署了A应用包,其中对外发布了A1、A2、A3,3 个Http服务供甲系统访问,上线运行若干日之后,发现原有的3个服务不够用,需要额外增加2个服务提供给乙系统访问,此时按照本实施例方法,只需再开发一个B应用包,内含额外需要的2个服务,开发测试完毕之后,安装到主机系统上并启动,新开发的应用包的服务即上线成功。Application package A has been deployed in the main application program, in which A1, A2, and A3 are released to the public, and 3 Http services are accessed by system A. After several days of online operation, it is found that the original 3 services are not enough, and 2 additional services need to be added. A service is provided for system B to access. At this time, according to the method of this embodiment, it is only necessary to develop another B application package, which contains two additional services. After the development and testing are completed, install it on the host system and start it. The newly developed The service of the application package is launched successfully.

现有技术中一般的做法需要整个主应用程序经过重新打包,重启才能将新增的服务上线使用,在此过程中,已经上线的A1、A2、A3服务也会被停止无法访问,而且更新服务越频繁,受到的影响越大,而本发明实施例提供的技术方案可以在主应用程序不停机也能更新服务。The general practice in the prior art requires the entire main application program to be repackaged and restarted before the newly added service can be used online. During this process, the A1, A2, and A3 services that have already been launched will also be stopped and cannot be accessed, and the updated service The more frequent, the greater the impact, and the technical solution provided by the embodiment of the present invention can update the service without stopping the main application program.

具体的,参看图1和图2,微服务热部署方法,包括步骤:Specifically, refer to Figure 1 and Figure 2, the microservice hot deployment method, including steps:

S1,获取应用包,所述应用包至少包括满足spring boot框架服务的配置文件信息、内容符合spring boot标准并约定好目录规则的应用驱动文件及可标识配置内容的应用元数据等资源信息;S1. Obtain an application package, the application package at least includes resource information such as configuration file information satisfying spring boot framework services, application driver files whose content conforms to spring boot standards and agreed directory rules, and application metadata that can identify configuration content;

在本步骤中,应用包中根据需要包括满足spring boot框架服务的配置文件信息,配置文件信息可以包括spring boot框架的服务地址、名称、参数、返回数据等信息,这些配置文件信息主要用于提供给外部访问时的搜索使用,例如可以根据这些信息去对外发布这个服务作为http服务提供给外部使用。In this step, the application package includes configuration file information that satisfies the spring boot framework service as required. The configuration file information may include information such as the service address, name, parameters, and return data of the spring boot framework. These configuration file information are mainly used to provide For external access to search, for example, this information can be used to publish this service as an http service for external use.

在一些实施例中,应用驱动文件的格式一般为springContext.xml,即文件内容为spring boot标准springContext定义,并约定好目录规则。约定好目录规则的目的是方便在接下来的装载好应用包后,主应用程序根据确定的规则去读取这些文件。In some embodiments, the format of the application driver file is generally springContext.xml, that is, the content of the file is defined by the standard springContext of spring boot, and the directory rules are agreed upon. The purpose of agreeing on the directory rules is to facilitate the main application to read these files according to the determined rules after the next application package is loaded.

在一些实施例中,应用包中还包括定义应用的启动、停止、卸载事件,当监听到应用的启动、停止或卸载事件等,可以根据需要在事件触发后做相应的业务处理。In some embodiments, the application package also includes defining application start, stop, and uninstall events. When an application start, stop, or uninstall event is detected, corresponding business processing can be performed after the event is triggered as required.

在一些实施例中,所述应用元数据,主要包含以下要素:In some embodiments, the application metadata mainly includes the following elements:

应用名称:在前端显示的有意义的中(英)文名称;Application name: a meaningful Chinese (English) name displayed on the front end;

应用标识:全局惟一标识,能够确定服务的身份证之类的唯一值,在整个应用程序里唯一;Application ID: Globally unique ID, which can determine the unique value of the ID card of the service, which is unique in the entire application;

应用版本:符合业界或企业内部的版本号定义;Application version: conforms to the definition of version number in the industry or within the enterprise;

服务信息:对外服务的基本信息,如服务数量、服务描述、服务类型等;Service information: basic information on external services, such as service quantity, service description, service type, etc.;

配置信息:应用需要的配置项,如配置文件、数据源、系统参数、依赖服务等。Configuration information: Configuration items required by the application, such as configuration files, data sources, system parameters, dependent services, etc.

在上述资源信息确定好后,即可根据需要的逻辑编写并获取相应的应用源代码。After the above resource information is determined, the corresponding application source code can be written and obtained according to the required logic.

在一些实施例中,通过标准的构建工具,例如maven、ant、gradle等将应用源代码,构建成应用包,构建应用包需将“应用驱动文件”放置于约定好的规则目录下,以便后续步骤加载。构建出的应用包为标准的Jar包。In some embodiments, the application source code is built into an application package through standard construction tools, such as maven, ant, gradle, etc. To build the application package, the "application driver file" needs to be placed in the agreed rule directory for subsequent Step loading. The constructed application package is a standard Jar package.

S2,保存所述应用包到存储装置(相当于图2中部署应用中的保存到存储装置),并装载存储装置中的应用包到指定文件目录(相当于图2中部署应用中的最后一步:将应用包写入容器指定路径,注册应用)。S2, save the application package to the storage device (equivalent to saving to the storage device in the deployment application in Figure 2), and load the application package in the storage device to the specified file directory (equivalent to the last step in the deployment application in Figure 2 : Write the application package to the specified path of the container, and register the application).

在应用包存储之前,需要上传所述应用包,可通过主应用程序所在主机的安装界面上传开发的应用包。在上传应用包后,还需要对所述应用包进行效验,校验内容主要包含单不限于:Before the application package is stored, the application package needs to be uploaded, and the developed application package can be uploaded through the installation interface of the host where the main application program is located. After uploading the application package, it is also necessary to verify the validity of the application package. The content of the verification mainly includes but is not limited to:

(1)应用驱动文件是否存在。(1) Whether the application driver file exists.

(2)应用元数据是否存在,且应用标识未被使用。(2) Whether the application metadata exists and the application identifier is not used.

(3)配置信息中要求的配置项是否满足。(3) Whether the configuration items required in the configuration information are satisfied.

验证完毕后,保存应用包到存储装置中,并装载存储装置中的应用包到指定文件目录。After the verification is completed, save the application package to the storage device, and load the application package in the storage device to the specified file directory.

S3,创建应用包的类加载器,并将该类加载器装载到主应用程序所在的类加载器集合中,并设置其类加载器的类型;S3, create the class loader of the application package, load the class loader into the class loader collection where the main application program is located, and set the type of the class loader;

为了便于理解,在本步骤中,创建应用包的类加载器的具体方法包括:For ease of understanding, in this step, the specific methods for creating the class loader of the application package include:

创建UrlClassLoader实例;Create a UrlClassLoader instance;

将应用包添加到实例的url集合中,设置其类加载器为父类加载器,类型为启动类加载器,供给后面的spring容器。Add the application package to the url collection of the instance, set its class loader as the parent class loader, and set the type as the startup class loader to supply the subsequent spring container.

本步骤中,根据装载的这些实例,将应用装载到主应用程序所在的虚拟机中,比如创建驱动文件里声明的java bean实例,加载需要的配置文件信息等,虚拟机可以读取其中声明的服务地址等信息,以便外部访问。In this step, according to the loaded instances, the application is loaded into the virtual machine where the main application is located, such as creating the java bean instance declared in the driver file, loading the required configuration file information, etc., and the virtual machine can read the declared Service address and other information for external access.

在创建应用包的类加载器后还需要查找应用包内的spring bean相关资源并进行配置,配置好的文件符合xml标准。参看图2中启动应用单元中的“查找应用内的springbean配置xml”。After creating the class loader of the application package, it is also necessary to search for the spring bean-related resources in the application package and configure them. The configured files conform to the XML standard. Refer to "Finding the springbean configuration xml in the application" in the starting application unit in Figure 2.

S4,设置应用驱动文件类加载器为所述创建应用包的类加载器创建的类加载器,使用所述类加载器装载所述应用驱动文件;S4, setting the application driver file class loader as the class loader created by the class loader for creating the application package, and using the class loader to load the application driver file;

S5,使用spring boot初始化应用包获得初始化后的spring boot容器,将springboot容器与应用元数据建立关联,将建立关联的对照表保存在程序上下文中;S5, use the spring boot initialization application package to obtain the initialized spring boot container, associate the spring boot container with the application metadata, and save the associated comparison table in the program context;

上述两个步骤的目的是创建程序上下文,参看图2中启动应用单元中的“指定类加载器为之前创建的类加载器,创建xmlapplicationcontext”。此处的xmlapplicationcontext理解为程序上下文,创建成功后,上述对照表即保存在了程序的上下文中。The purpose of the above two steps is to create a program context, see "designate the class loader as the previously created class loader and create xmlapplicationcontext" in the start application unit in Figure 2. The xmlapplicationcontext here is understood as the program context. After the creation is successful, the above comparison table is saved in the program context.

S6,刷新spring boot容器内的服务资源引用,按照spring对外发布服务的规则,生成服务的定义,对外发布。S6. Refresh the service resource reference in the spring boot container, generate a service definition according to the rules of spring's external release service, and release it externally.

在本步骤中,执行应用启动事件,根据所述配置文件信息刷新spring boot容器内的服务资源引用,将对外声明的服务路径与应用包的执行逻辑建立关联。按照spring对外发布服务的规则,生成服务的定义,对外发布。In this step, the application startup event is executed, the service resource reference in the spring boot container is refreshed according to the configuration file information, and the externally declared service path is associated with the execution logic of the application package. According to the rules of spring publishing services to the outside world, the definition of the service is generated and released to the outside world.

按照spring对外发布服务的规则,生成服务的定义,对外发布,外部通过访问这些地址来查找对应的服务定义,然后执行相应的服务操作。According to the rules of spring publishing services to the outside world, the definition of the service is generated and released to the outside world. The outside world searches for the corresponding service definition by accessing these addresses, and then executes the corresponding service operation.

另外,还需要说明的是,在一些实施例中,还可以将应用包中的“应用元数据”注册到当前应用中,用于展示和后续的可视化操作。In addition, it should be noted that, in some embodiments, the "application metadata" in the application package can also be registered in the current application for presentation and subsequent visualization operations.

在一些实施例中,微服务热部署方法还包括停止应用的方法,具体包括:In some embodiments, the microservice hot deployment method also includes a method of stopping the application, specifically including:

通过通过程序上下文中保存的“应用标识与spring容器”关系,得到 spring容器;Get the spring container through the relationship between "application identifier and spring container" saved in the program context;

执行应用停止事件;Execute application stop event;

使用spring boot销毁spring容器;Use spring boot to destroy the spring container;

关闭容器使用的类加载器ClassLoader;Close the class loader ClassLoader used by the container;

刷新spring boot容器内的服务资源引用,将对外声明的服务路径与应用包的执行逻辑关系解除。Refresh the service resource reference in the spring boot container, and release the execution logic relationship between the externally declared service path and the application package.

在一些实施例中,微服务热部署方法还包括卸载应用的方法,具体包括在执行完停止方法后,再删除储存装置中的应用包。In some embodiments, the microservice hot deployment method further includes a method of uninstalling applications, specifically including deleting the application package in the storage device after the stop method is executed.

综上,通过本实施例的微服务热部署方法不仅可以达到不停机也能更新服务的目标,还可以动态生成服务说明文档,服务发布或者停止之后更新服务列表。To sum up, the microservice hot deployment method of this embodiment can not only achieve the goal of updating services without stopping, but also dynamically generate service description documents, and update the service list after the service is released or stopped.

第二方面,如图3所示,本申请实施例还提供了微服务热部署系统,所述系统包括:In the second aspect, as shown in FIG. 3, the embodiment of the present application also provides a microservice hot deployment system, and the system includes:

应用包获取单元,用于获取应用包,所述应用包至少包括满足spring boot框架服务的配置文件信息、内容符合spring boot标准并约定好目录规则的应用驱动文件及可标识配置内容的应用元数据;The application package obtaining unit is used to obtain the application package, and the application package at least includes configuration file information satisfying the spring boot framework service, an application driver file whose content conforms to the spring boot standard and agreed directory rules, and application metadata that can identify the configuration content ;

应用包装载单元,保存所述应用包到存储装置,并装载存储装置中的应用包到指定文件目录;An application package loading unit, saving the application package to a storage device, and loading the application package in the storage device to a specified file directory;

类加载器创建单元,用于创建应用包的类加载器,并将该类加载器装载到主应用程序所在的类加载器集合中,并设置其类加载器的类型;The class loader creation unit is used to create the class loader of the application package, load the class loader into the class loader collection where the main application program is located, and set the type of its class loader;

应用驱动文件装载单元,设置应用驱动文件类加载器为所述创建应用包的类加载器创建的类加载器,使用所述类加载器装载所述应用驱动文件;The application driver file loading unit is configured to set the application driver file class loader as the class loader created by the class loader for creating the application package, and use the class loader to load the application driver file;

应用元数据关联建立单元,在使用spring boot初始化应用包后后获得的springboot容器与应用元数据建立关联,将建立关联的对照表保存在程序上下文中;The application metadata association establishment unit, the springboot container obtained after using the spring boot to initialize the application package is associated with the application metadata, and the association comparison table is saved in the program context;

服务资源发布单元,刷新spring boot容器内的服务资源引用,按照spring对外发布服务的规则,生成服务的定义,对外发布。The service resource release unit refreshes the service resource references in the spring boot container, generates the definition of the service according to the rules of spring external release services, and releases them externally.

需要说明的是,上述实施例提供的系统在执行上述方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成上述的全部或者部分功能。另外,上述实施例提供的系统与方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。It should be noted that when the system provided by the above embodiment executes the above method, it only uses the division of the above functional modules as an example for illustration. In practical applications, the above function allocation can be completed by different functional modules according to the needs, namely The internal structure of the system is divided into different functional modules to complete all or part of the above functions. In addition, the system and method embodiments provided by the above embodiments belong to the same idea, and the implementation process thereof is detailed in the method embodiments, which will not be repeated here.

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。The serial numbers of the above embodiments of the present application are for description only, and do not represent the advantages and disadvantages of the embodiments.

本申请实施例还提供了一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于有处理器加载并执行上述微服务热部署的方法步骤。The embodiment of the present application also provides a computer storage medium, where a plurality of instructions are stored in the computer storage medium, and the instructions are suitable for being loaded by a processor and executing the above method steps of hot deployment of microservices.

具体执行过程可以参见图1所示实施例的具体说明,在此不进行赘述。For the specific execution process, reference may be made to the specific description of the embodiment shown in FIG. 1 , and details are not repeated here.

本申请实施例还提供了一种电子设备,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述微服务热部署的方法。An embodiment of the present application also provides an electronic device, including a processor and a memory, where the memory stores a computer program, and the computer program is suitable for being loaded by the processor and executing the above method for hot deployment of microservices.

请参见图4,为本申请实施例提供了微服务热部署装置的主要硬件结构示意图。如图4所示,Please refer to FIG. 4 , which provides a schematic diagram of the main hardware structure of the microservice hot deployment device according to the embodiment of the present application. As shown in Figure 4,

微服务热部署装置300可以包括:至少一个处理器301,至少一个网络接口304,用户接口303,存储器305,至少一个通讯总线302。The microservice hot deployment apparatus 300 may include: at least one processor 301 , at least one network interface 304 , a user interface 303 , a memory 305 , and at least one communication bus 302 .

其中,通讯总线302用于实现这些组件之间的连接通讯。Wherein, the communication bus 302 is used to realize connection and communication between these components.

其中,用户接口303可以包括触摸屏和摄像头(Camera)。Wherein, the user interface 303 may include a touch screen and a camera (Camera).

其中,网络接口304可选的可以包括标准的有线接口、无线接口(如 WI-FI接口)。Wherein, the network interface 304 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface).

其中,处理器301可以包括一个或者多个处理核心。处理器301利用各种接口和线路连接整个多租户模式数据采集系统300内的各个部分,通过运行或执行存储在存储器305内的指令、程序、代码集或指令集,以及调用存储在存储器305内的数据,执行多租户模式数据采集系统300的各种功能和处理数据。可选的,处理器30 1可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列 (Field-Programmable GateArray,FPGA)、可编程逻辑阵列 (Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器301可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通讯。可以理解的是,上述调制解调器也可以不集成到处理器301中,单独通过一块芯片进行实现。Wherein, the processor 301 may include one or more processing cores. The processor 301 uses various interfaces and lines to connect various parts in the entire multi-tenant mode data acquisition system 300, and runs or executes instructions, programs, code sets or instruction sets stored in the memory 305, and calls stored in the memory 305. Execute various functions of the multi-tenant mode data acquisition system 300 and process the data. Optionally, the processor 301 may use at least one of Digital Signal Processing (Digital Signal Processing, DSP), Field-Programmable Gate Array (Field-Programmable GateArray, FPGA), and Programmable Logic Array (Programmable Logic Array, PLA). implemented in the form of hardware. The processor 301 may integrate one or a combination of a central processing unit (Central Processing Unit, CPU), an image processor (Graphics Processing Unit, GPU), a modem, and the like. Among them, the CPU mainly handles the operating system, user interface and application programs, etc.; the GPU is used to render and draw the content that needs to be displayed on the display screen; the modem is used to handle wireless communication. It can be understood that the foregoing modem may also not be integrated into the processor 301, but may be realized by a single chip.

其中,存储器305可以包括随机存储器(Random Access Memory, RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器 305包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器305可用于存储指令、程序、代码、代码集或指令集。存储器305可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器305可选的还可以是至少一个位于远离前述处理器301的存储装置。作为一种计算机存储介质的存储器305中可以包括操作系统、网络通讯模块、用户接口模块以及应用程序。在图4所示的系统300中,用户接口303主要用于为用户提供输入的接口,获取用户输入的数据;而处理器301可以用于调用存储器 305中存储的应用程序,并具体执行如图1所示的方法,具体过程可参照图 1所示,此处不再赘述。Wherein, the memory 305 may include a random access memory (Random Access Memory, RAM), or may include a read-only memory (Read-Only Memory). Optionally, the memory 305 includes a non-transitory computer-readable storage medium. Memory 305 may be used to store instructions, programs, codes, sets of codes, or sets of instructions. The memory 305 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playback function, an image playback function, etc.), Instructions and the like for implementing the above method embodiments; the storage data area can store the data and the like involved in the above method embodiments. Optionally, the memory 305 may also be at least one storage device located away from the aforementioned processor 301 . The memory 305 as a computer storage medium may include an operating system, a network communication module, a user interface module and application programs. In the system 300 shown in FIG. 4 , the user interface 303 is mainly used to provide the user with an input interface to obtain the data input by the user; and the processor 301 can be used to call the application program stored in the memory 305, and specifically execute as shown in FIG. 1, the specific process can be referred to as shown in FIG. 1, and will not be repeated here.

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可随主应用程序存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be realized through computer programs to instruct related hardware, and the programs can be stored in a computer-readable storage medium along with the main application program When the program is executed, it may include the processes of the embodiments of the above-mentioned methods. Wherein, the storage medium may be a magnetic disk, an optical disk, a read-only memory or a random access memory, and the like.

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽范围。The above description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the present invention will not be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (12)

1.一种微服务热部署方法,其特征在于,所述方法包括:1. A microservice hot deployment method, characterized in that the method comprises: 获取应用包,所述应用包至少包括满足spring boot框架服务的配置文件信息、内容符合spring boot标准并约定好目录规则的应用驱动文件及可标识配置内容的应用元数据;Obtaining an application package, the application package at least includes configuration file information satisfying the spring boot framework service, an application driver file whose content conforms to the spring boot standard and agreed directory rules, and application metadata that can identify the configuration content; 保存所述应用包到存储装置,并装载存储装置中的应用包到指定文件目录;saving the application package to a storage device, and loading the application package in the storage device to a specified file directory; 创建应用包的类加载器,并将该类加载器装载到主应用程序所在的类加载器集合中,并设置其类加载器的类型;Create the class loader of the application package, load the class loader into the class loader collection where the main application is located, and set the type of its class loader; 设置应用驱动文件类加载器为所述创建应用包的类加载器创建的类加载器,使用所述类加载器装载所述应用驱动文件;Setting the application driver file class loader as the class loader created by the class loader for creating the application package, and using the class loader to load the application driver file; 使用spring boot初始化应用包获得spring boot容器,将spring boot容器与应用元数据建立关联,将建立关联的对照表保存在程序上下文中;Use spring boot to initialize the application package to obtain the spring boot container, associate the spring boot container with application metadata, and save the associated comparison table in the program context; 刷新spring boot容器内的服务资源引用,按照spring对外发布服务的规则,生成服务的定义,对外发布。Refresh the service resource reference in the spring boot container, generate the service definition according to the rules of spring's external publishing service, and publish it externally. 2.如权利要求1所述的方法,其特征在于,所述满足spring boot框架服务的配置文件信息至少包括spring boot框架的服务地址、名称、参数、返回数据。2. The method according to claim 1, wherein the configuration file information satisfying the spring boot framework service at least includes the service address, name, parameters, and return data of the spring boot framework. 3.如权利要求1所述的方法,其特征在于,所述应用包通过maven、ant或gradle构建工具构建,并且构建出的程序包为jar包。3. The method according to claim 1, wherein the application package is constructed by a maven, ant or gradle construction tool, and the constructed program package is a jar package. 4.如权利要求1所述的方法,其特征在于,创建应用包的类加载器的具体方法包括步骤:4. The method according to claim 1, wherein the specific method for creating the class loader of the application package comprises the steps of: 创建UrlClassLoader实例;Create a UrlClassLoader instance; 将应用包添加到实例的url集合中,设置其类加载器为启动类加载器。Add the application package to the url collection of the instance, and set its class loader as the startup class loader. 5.如权利要求1所述的方法,其特征在于,所述应用驱动文件为springContext.xml格式的应用驱动文件。5. The method according to claim 1, wherein the application driver file is an application driver file in springContext.xml format. 6.如权利要求1所述的方法,其特征在于,所述应用元数据信息至少包括应用名称、应用标识、应用版本、服务信息和配置信息中的一种,其中,所述服务信息至少包括对外的服务数量、服务描述和服务类型中的一种,所述配置信息至少包括配置文件、数据源、系统参数、依赖服务信息中的一种。6. The method according to claim 1, wherein the application metadata information includes at least one of application name, application identifier, application version, service information, and configuration information, wherein the service information includes at least One of external service quantity, service description, and service type, and the configuration information includes at least one of configuration files, data sources, system parameters, and dependent service information. 7.如权利要求6所述的方法,其特征在于,在将所述应用包保存到存储装置之前,还需要上传所述应用包,所述应用包在上传后,还需要对所述应用包进行效验,效验的内容至少包括应用驱动文件是否存在、应用元数据是否存在,且应用标识是否被使用、配置文件信息中要求的配置项是否满足中的一项。7. The method according to claim 6, wherein before saving the application package to the storage device, the application package needs to be uploaded, and after the application package is uploaded, the application package needs to be Perform verification, and the content of the verification includes at least one of whether the application driver file exists, whether the application metadata exists, whether the application identification is used, and whether the configuration items required in the configuration file information are satisfied. 8.如权利要求6所述的方法,其特征在于,所述方法还包括停止应用的方法,具体包括:8. The method according to claim 6, further comprising a method of stopping the application, specifically comprising: 通过所述应用标识与spring容器的关系,获取spring容器;Acquire the spring container through the relationship between the application identifier and the spring container; 使用spring boot销毁spring容器;Use spring boot to destroy the spring container; 关闭容器使用的类加载器;Close the class loader used by the container; 刷新spring boot容器内的服务资源引用,将对外声明的服务路径与应用包的执行逻辑关系解除。Refresh the service resource reference in the spring boot container, and release the execution logic relationship between the externally declared service path and the application package. 9.如权利要求8所述的方法,其特征在于,所述方法还包括卸载应用的方法,具体包括在执行完权利要求8所述的步骤后,再删除储存装置中的应用包。9. The method according to claim 8, further comprising a method of uninstalling an application, specifically comprising deleting the application package in the storage device after the steps of claim 8 are performed. 10.一种微服务热部署系统,其特征在于,包括:10. A microservice hot deployment system, comprising: 应用包获取单元,用于获取应用包,所述应用包至少包括满足spring boot框架服务的配置文件信息、内容符合spring boot标准并约定好目录规则的应用驱动文件及可标识配置内容的应用元数据;The application package obtaining unit is used to obtain the application package, and the application package at least includes configuration file information satisfying the spring boot framework service, an application driver file whose content conforms to the spring boot standard and agreed directory rules, and application metadata that can identify the configuration content ; 应用包装载单元,保存所述应用包到存储装置,并装载存储装置中的应用包到指定文件目录;An application package loading unit, saving the application package to a storage device, and loading the application package in the storage device to a specified file directory; 类加载器创建单元,用于创建应用包的类加载器,并将该类加载器装载到主应用程序所在的类加载器集合中,并设置其类加载器的类型;The class loader creation unit is used to create the class loader of the application package, load the class loader into the class loader collection where the main application program is located, and set the type of its class loader; 应用驱动文件装载单元,设置应用驱动文件类加载器为所述创建应用包的类加载器创建的类加载器,使用所述类加载器装载所述应用驱动文件;The application driver file loading unit is configured to set the application driver file class loader as the class loader created by the class loader for creating the application package, and use the class loader to load the application driver file; 应用元数据关联建立单元,在使用spring boot初始化应用包后获得的spring boot容器与应用元数据建立关联,将建立关联的对照表保存在程序上下文中;The application metadata association establishment unit is used to establish an association between the spring boot container obtained after the application package is initialized by using spring boot and the application metadata, and save the association comparison table in the program context; 服务资源发布单元,刷新spring boot容器内的服务资源引用,按照spring对外发布服务的规则,生成服务的定义,对外发布。The service resource release unit refreshes the service resource references in the spring boot container, generates the definition of the service according to the rules of spring external release services, and releases them externally. 11.一种计算机存储介质,其特征在于:所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1-9任一项所述的方法步骤。11. A computer storage medium, characterized in that: the computer storage medium stores a plurality of instructions, and the instructions are suitable for being loaded by a processor and executing the method steps according to any one of claims 1-9. 12.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1-9任一项所述的方法步骤。12. An electronic device, characterized in that it comprises a processor and a memory, the memory stores a computer program, and the computer program is adapted to be loaded and executed by the processor as described in any one of claims 1-9 method steps.
CN202211338090.6A 2022-10-28 2022-10-28 Microservice hot deployment method, system, electronic device and storage medium Pending CN115658109A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211338090.6A CN115658109A (en) 2022-10-28 2022-10-28 Microservice hot deployment method, system, electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211338090.6A CN115658109A (en) 2022-10-28 2022-10-28 Microservice hot deployment method, system, electronic device and storage medium

Publications (1)

Publication Number Publication Date
CN115658109A true CN115658109A (en) 2023-01-31

Family

ID=84992580

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211338090.6A Pending CN115658109A (en) 2022-10-28 2022-10-28 Microservice hot deployment method, system, electronic device and storage medium

Country Status (1)

Country Link
CN (1) CN115658109A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117931325A (en) * 2024-03-22 2024-04-26 北京融和友信科技股份有限公司 Method for automatically discovering java bean resources by micro-service system
CN118642781A (en) * 2024-08-14 2024-09-13 杭州新中大科技股份有限公司 A method, device, equipment and storage medium for quickly starting an application program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389186A (en) * 2015-11-20 2016-03-09 福建亿榕信息技术有限公司 Hot deployment method and system for Java application
US20210124576A1 (en) * 2019-10-24 2021-04-29 Next Pathway Inc. System and Method for Automated Microservice Source Code Generation and Deployment
CN113849189A (en) * 2021-09-28 2021-12-28 上海金仕达软件科技有限公司 Project hot deployment method and device
CN115048112A (en) * 2021-02-25 2022-09-13 北京同邦卓益科技有限公司 Micro-service deployment method, device, electronic equipment and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389186A (en) * 2015-11-20 2016-03-09 福建亿榕信息技术有限公司 Hot deployment method and system for Java application
US20210124576A1 (en) * 2019-10-24 2021-04-29 Next Pathway Inc. System and Method for Automated Microservice Source Code Generation and Deployment
CN115048112A (en) * 2021-02-25 2022-09-13 北京同邦卓益科技有限公司 Micro-service deployment method, device, electronic equipment and storage medium
CN113849189A (en) * 2021-09-28 2021-12-28 上海金仕达软件科技有限公司 Project hot deployment method and device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117931325A (en) * 2024-03-22 2024-04-26 北京融和友信科技股份有限公司 Method for automatically discovering java bean resources by micro-service system
CN117931325B (en) * 2024-03-22 2024-06-11 北京融和友信科技股份有限公司 Method for automatically discovering java bean resources by micro-service system
CN118642781A (en) * 2024-08-14 2024-09-13 杭州新中大科技股份有限公司 A method, device, equipment and storage medium for quickly starting an application program
CN118642781B (en) * 2024-08-14 2025-02-14 杭州新中大科技股份有限公司 A method, device, equipment and storage medium for quickly starting an application program

Similar Documents

Publication Publication Date Title
CN113312037B (en) Data processing method, device, equipment and storage medium applied to micro-service
US11405274B2 (en) Managing virtual network functions
JP7090657B2 (en) Methods, devices, devices and storage media for upgrading applications
US9110761B2 (en) Resource data structures for firmware updates
US10268628B2 (en) Method for extracting BIOS attributes for BIOS management and system therefor
US8959321B1 (en) Fast restart on a virtual machine
WO2016155388A1 (en) Method and device for installing and running application
KR20150128671A (en) Application scenario identification method, power consumption management method, apparatus, and terminal device
US10747510B1 (en) Application runtime modification
CN113934437B (en) Method, system and client cloud phone for installing applications on cloud phone
US11301366B2 (en) Test automation systems and methods using logical identifiers
JP2021099888A (en) Service information processing method, device, facility, computer storage medium, and program
US10338910B2 (en) Multi-tenant upgrading
CN106257418B (en) Techniques for evaluating an application by using an auxiliary application
CN114816676A (en) System and method for realizing multi-tenant deployment of low code development platform
CN112685117A (en) System language internationalization maintenance method, device and computer readable storage medium
CN115658109A (en) Microservice hot deployment method, system, electronic device and storage medium
CN113050962B (en) Mobile service upgrade method, device and terminal
US10698677B2 (en) Method and system for lifecycle management optimization
CN116679912B (en) Code generation method, apparatus, device, storage medium, and computer program
US20240028309A1 (en) System and method for generating package for a low-code application builder
US11429166B2 (en) System and method for managing device updates
CN110673827B (en) Android system-based resource calling method, device, and electronic equipment
CN110599112A (en) Method and device for developing and maintaining network page
CN107423096A (en) A kind of method and device for realizing software installation

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