Micro-service deployment method, device, processor and electronic device

By creating a deployment environment template library and automatic configuration files for application packages, the problem of repetitive work in microservice deployment is solved, achieving semi-automated and efficient deployment and reducing labor costs.

CN116048536BActive Publication Date: 2026-05-01中国邮政储蓄银行股份有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
中国邮政储蓄银行股份有限公司
Filing Date
2022-12-27
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

In existing technologies, microservice deployment requires a lot of repetitive work, wasting human resources, and the deployment preparation work is complicated and time-consuming.

Method used

This paper provides a method for deploying microservices. By creating a deployment environment template library, which includes multiple deployment environment templates, it automatically configures service version information, server resources, instance resources and application packages, and uses the application packages to automatically send configuration files to the configuration center, thus achieving semi-automatic deployment.

Benefits of technology

It reduces repetitive work for deployment personnel, lowers labor costs, improves deployment efficiency, and enables semi-automatic setup of the deployment environment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116048536B_ABST
    Figure CN116048536B_ABST
Patent Text Reader

Abstract

The application provides a micro-service deployment method and device, a processor and an electronic device. The method comprises: creating a deployment environment template library and displaying it on a display interface, the deployment environment template library comprising a plurality of deployment environment templates; in response to a first operation on the deployment environment template library, determining a target template from the plurality of deployment environment templates, configuring predetermined information for a target service, the target service being at least part of the services in the target template, the predetermined information comprising service version information, server resources, instance resources and an application package, the application package storing configuration files and programming statements corresponding to each service; configuring a database table for the target service according to the application package, sending the configuration files corresponding to the target service to a configuration center according to the application package, and displaying a deployment identifier on the display interface; and in response to a second operation on the deployment identifier, deploying the target service configured with the predetermined information and the database table. The application saves labor costs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of microservice deployment technology, and more specifically, to a microservice deployment method, apparatus, computer-readable storage medium, processor, and electronic device. Background Technology

[0002] As the software market continues to expand and customers demand increasingly higher software quality, software development is facing various challenges. One major challenge is how to quickly deploy code to the production environment and rapidly realize its business value. This is especially true for microservices, which are multi-service products where multiple services often need to be integrated to provide a complete service to customers.

[0003] Currently, software product delivery primarily utilizes DevOps (Development and Operations, processes, methods, and systems). Deploying a multi-service product using DevOps generally involves the following preparatory work:

[0004] 1) Manually plan the application server resources and database resources required for the service components deployed in this project.

[0005] 2) Upload the server resources to the DevOps repository.

[0006] 3) Manually create database instances, tables, and initialize data.

[0007] 4) Manually create the AppID and release configuration file for each Apollo service.

[0008] 5) Manually plan the service components and corresponding component versions for this deployment.

[0009] 6) Create a release pipeline for each service on the DevOps platform. Each pipeline needs to be configured with information such as release environment, service components, version, media repository, machine resources, user directory, installation directory, application port number, and startup parameters.

[0010] The existing DevOps approach for deploying multiple independent service components is not only complicated, labor-intensive, and time-consuming in terms of pre-deployment preparation, but also requires orchestrating the corresponding release pipelines for each service and configuring deployment environment-related information, which also requires a lot of repetitive work. Summary of the Invention

[0011] The main objective of this application is to provide a method, apparatus, computer-readable storage medium, processor, and electronic device for deploying microservices, in order to solve the problem that service deployment in the prior art requires deployment personnel to perform a large amount of repetitive work, which wastes human resources costs.

[0012] According to one aspect of the present invention, a method for deploying microservices is provided, comprising: creating a deployment environment template library and displaying it on a display interface, the deployment environment template library including multiple deployment environment templates, different deployment environment templates having different data center deployment architectures, each deployment environment template including multiple services and deployment environments corresponding to the services; responding to a first operation acting on the deployment environment template library, determining a target template from the multiple deployment environment templates and configuring predetermined information for a target service, the target service being at least a portion of the services in the target template, the predetermined information including service version information, server resources, instance resources, and an application package, the application package storing configuration files and programming statements corresponding to each service; configuring a database table for the target service according to the application package, and sending the configuration file corresponding to the target service to a configuration center according to the application package, and displaying a deployment identifier on the display interface; responding to a second operation acting on the deployment identifier, deploying the target service configured with the predetermined information and the database table.

[0013] Optionally, in response to a first operation acting on the deployment environment template library, determining a target template from a plurality of deployment environment templates includes: in response to the first operation, displaying a plurality of deployment environment templates and a first selection identifier corresponding to each deployment environment template on the display interface; in response to a third operation acting on the first selection identifier corresponding to the target template, determining the target template, and displaying a plurality of services in the target template and a second selection identifier corresponding to each service on the display interface.

[0014] Optionally, configuring predetermined information for the target service includes: determining the target service in response to a fourth operation acting on the second selection identifier; configuring the latest version information as the service version information of the target service and displaying a first interface, the first interface including a first editing area and the latest version information, the first editing area being an area for modifying the service version information; configuring the server IP address and server port number as the server resources of the target service and displaying a second interface, the second interface including a second editing area, the server IP address and the server port number, the second editing area being an area for modifying the server IP address and server port number; and configuring the instance resources and the application package for the target service.

[0015] Optionally, the first editing area includes a first custom identifier and multiple third selection identifiers corresponding to historical version information. After displaying the first interface, the method further includes one of the following: in response to a fifth operation acting on the target selection identifier, configuring the historical version information corresponding to the target selection identifier as the service version information, wherein the target selection identifier is one of the multiple third selection identifiers; in response to a sixth operation acting on the first custom identifier, reading predetermined version information and configuring the predetermined version information as the service version information.

[0016] Optionally, the second editing area includes a second custom identifier. After displaying the second interface, the method further includes: in response to a seventh operation acting on the second custom identifier, reading a predetermined server IP address and a predetermined server port number, and configuring the predetermined server IP address and the predetermined server port number as the server resource.

[0017] Optionally, the application package further includes a first mapping relationship, which represents the correspondence between each service and a first path, where the first path is the storage path of the configuration file in the application package. Sending the configuration file corresponding to the target service to the configuration center according to the application package includes: determining the first path corresponding to the target service according to the first mapping relationship; finding the configuration file corresponding to the target service in the application package as the target configuration file according to the first path; and sending the target configuration file to the configuration center.

[0018] Optionally, the application package further includes a second mapping relationship, which represents the correspondence between each service and a second path. The second path is the storage path of the programming statement corresponding to the service in the application package. Configuring a database table for the target service according to the application package includes: determining the second path corresponding to the target service based on the second mapping relationship; retrieving the programming statement corresponding to the target service from the application package based on the second path; creating a database table template; and writing the programming statement corresponding to the target service into the database table template to obtain the database table.

[0019] Optionally, displaying a deployment identifier on the display interface includes: displaying an environment deployment diagram and the deployment identifier on the display interface, wherein the environment deployment diagram includes the target service configured with the predetermined information and the database table.

[0020] Optionally, the deployment environment includes a shared registration center, a shared configuration center, database sharding rules, transaction rules, and database templates. Multiple deployment environment templates include a single-datacenter template, a dual-datacenter template, and a two-site three-center template. The pre-defined information also includes the number of clusters.

[0021] According to another aspect of the present invention, a microservice deployment apparatus is also provided, comprising: a creation unit, configured to create a deployment environment template library and display it on a display interface, the deployment environment template library including multiple deployment environment templates, different deployment environment templates having different data center deployment architectures, each deployment environment template including multiple services and deployment environments corresponding to the services; a determination unit, configured to determine a target template from the multiple deployment environment templates in response to a first operation acting on the deployment environment template library, and configure predetermined information for a target service, the target service being at least a portion of the services in the target template, the predetermined information including service version information, server resources, instance resources, and an application package, the application package storing configuration files and programming statements corresponding to each service; a first configuration unit, configured to configure a database table for the target service according to the application package, and send the configuration file corresponding to the target service to a configuration center according to the application package, and display a deployment identifier on the display interface; and a deployment unit, configured to deploy the target service configured with the predetermined information and the database table in response to a second operation acting on the deployment identifier.

[0022] According to another aspect of the present invention, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored program, wherein the program executes any one of the methods described.

[0023] According to another aspect of the present invention, a processor is also provided, the processor being configured to run a program, wherein the program, when running, executes any one of the methods described.

[0024] According to another aspect of the present invention, an electronic device is also provided, comprising: one or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include methods for performing any one of the methods described.

[0025] According to the technical solution of this application, the microservice deployment method firstly creates a deployment environment template library including multiple deployment environment templates and displays the deployment environment template library on the display interface. Each deployment environment template includes multiple services and the corresponding deployment environment. Then, in response to a first operation on the deployment environment template library, a target template is determined from the multiple deployment environment templates, and predefined information is configured for at least some of the target services in the target template. The predefined information includes service version information, server resources, instance resources, and an application package storing configuration files and programming statements corresponding to each service. Then, according to the application package, a database table is configured for the target service, and the configuration file corresponding to the target service is sent to the configuration center. A deployment identifier is then displayed on the display interface. Finally, in response to a second operation on the deployment identifier, the target service configured with the predefined information and the database table is deployed. Compared to existing technologies that require orchestrating corresponding deployment pipelines for each service and configuring deployment environment information, which necessitates deployment personnel to perform a large amount of repetitive work and wastes human resources, this application addresses the problem by creating a deployment environment template library. This library provides multiple deployment environment templates to adapt to different usage requirements. By responding to the first operation, the target template is determined, and the target service within the template is configured with predefined information and database tables. The corresponding configuration file for the target service is then sent to the configuration center. This achieves a semi-automatic deployment environment setup function, eliminating the need to configure multiple deployment pipelines, reducing repetitive work for deployment personnel, freeing up manpower, and ensuring low labor costs. Attached Figure Description

[0026] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:

[0027] Figure 1 A flowchart illustrating a microservice deployment method according to an embodiment of this application is shown.

[0028] Figure 2 A schematic diagram illustrating the deployment process of microservices according to an embodiment of this application is shown;

[0029] Figure 3 A structural block diagram of a microservice deployment apparatus according to an embodiment of this application is shown. Detailed Implementation

[0030] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0031] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.

[0032] It should be noted that the terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be used interchangeably where appropriate for the embodiments of this application described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0033] It should be understood that when an element (such as a layer, film, region, or substrate) is described as being "on" another element, the element may be directly on the other element, or there may be an intermediate element present. Furthermore, in the specification and claims, when an element is described as being "connected" to another element, the element may be "directly connected" to the other element, or "connected" to the other element via a third element.

[0034] As mentioned in the background section, service deployment in the prior art requires deployment personnel to perform a large amount of repetitive work, wasting human resources. In order to solve the aforementioned problem, a typical embodiment of this application provides a microservice deployment method, apparatus, computer-readable storage medium, processor, and electronic device.

[0035] According to an embodiment of this application, a method for deploying microservices is provided.

[0036] Figure 1 This is a flowchart of a microservice deployment method according to an embodiment of this application. Figure 1 As shown, the method includes the following steps:

[0037] Step S101: Create a deployment environment template library and display it on the display interface. The deployment environment template library includes multiple deployment environment templates. Different deployment environment templates have different data center deployment architectures. Each deployment environment template includes multiple services and the deployment environment corresponding to the services.

[0038] Specifically, the deployment environment includes a shared registry center, a shared configuration center, database sharding rules, transaction rules, and database templates. Multiple deployment environment templates include single-datacenter, dual-datacenter, and two-site three-center templates. Different datacenter strategies, such as single-datacenter, dual-datacenter, and two-site three-center templates, are set according to testing and usage scenarios. The shared registry center and configuration center enable the construction of a shared system environment. The transaction rules include batch transactions and online transactions.

[0039] In practical applications, the registration center can be Nacos (a distributed registration center), and the configuration center can be Apollo (a distributed configuration center). Of course, the registration center and configuration center are not limited to these products and can be any other suitable registration center and configuration center. The data center strategy is also not limited to the single-data center template, dual-data center template, and two-site three-center template, and can also include multi-data center templates and other data center strategies.

[0040] Step S102: In response to the first operation acting on the deployment environment template library, a target template is determined from a plurality of deployment environment templates, and predetermined information is configured for the target service. The target service is at least a portion of the services in the target template. The predetermined information includes service version information, server resources, instance resources, and application packages. The application packages store configuration files and programming statements corresponding to each service.

[0041] The instance resource is an application instance of the service. The programming statement can be an SQL (Structured Query Language) statement or a statement in other programming languages.

[0042] The display interface can be the display interface of a smart device such as a computer or a PAD. The first operation can be any suitable operation applied to the deployment environment template library of the display interface, such as clicking (including single click and double click), selecting, sliding, and long pressing.

[0043] In this application, the configuration files in the application package are stored in the application-level application package, the system-level application package, and the enterprise-level application package, respectively. The application-level application package stores configuration files that are only required by some services, the system-level application package stores configuration files with system numbers that are required by some systems, and the enterprise-level application package stores configuration files that are required by all services.

[0044] According to another specific embodiment of this application, in response to a first operation acting on the deployment environment template library, determining a target template from a plurality of deployment environment templates includes: in response to the first operation, displaying a plurality of deployment environment templates and a first selection identifier corresponding to each deployment environment template on the display interface; and in response to a third operation acting on the first selection identifier corresponding to the target template, determining the target template and displaying a plurality of services in the target template and a second selection identifier corresponding to each service on the display interface. Through the first and third operations of the deployment personnel, the selection of a required target template from a plurality of deployment environment templates is achieved, further realizing a semi-automatic deployment environment setup function, thereby further reducing the repetitive work of the deployment personnel.

[0045] The third operation can also be an operation performed on the first selection identifier, such as clicking (including single and double clicks), selecting by box, sliding, and long pressing.

[0046] To further liberate manpower and reduce repetitive work for deployment personnel, in another specific embodiment of this application, predefined information is configured for the target service, including: determining the target service in response to a fourth operation acting on the second selection identifier; configuring the latest version information as the service version information of the target service and displaying a first interface, the first interface including a first editing area and the latest version information, the first editing area being an area for modifying the service version information; configuring the server IP address and server port number as the server resources of the target service and displaying a second interface, the second interface including a second editing area, the server IP address and the server port number, the second editing area being an area for modifying the server IP address and server port number; configuring the instance resources and the application package for the target service. In response to the fourth operation, the target service is determined from multiple services in the target template, and then the latest version information is automatically configured for the target service. This eliminates the need for manual configuration of the target service's version information, further ensuring a high degree of automation. A first interface, including a first editing area and the latest version information, is displayed, allowing deployment personnel to easily check whether the automatically configured service version information meets their needs. If the automatically configured service version information does not meet their needs, it can be modified through the first editing area, ensuring flexible configuration of service version information. Next, server resources are automatically configured for the target service, further improving the degree of automation. A second interface, including a second editing area, the server IP address, and the server port number, is displayed, allowing deployment personnel to easily check whether the automatically configured server resources meet their needs. If the automatically configured server resources do not meet their needs, the server IP address and server port number can be modified through the second editing area, ensuring flexible configuration of server resources. Finally, the instance resources and application package are automatically configured for the target service, further improving the degree of automation and freeing up manpower.

[0047] To further ensure configuration flexibility, in one specific embodiment of this application, the first editing area includes a first custom identifier and multiple third selection identifiers corresponding to historical version information. After displaying the first interface, the method further includes one of the following: in response to a fifth operation acting on the target selection identifier, configuring the historical version information corresponding to the target selection identifier as the service version information, wherein the target selection identifier is one of the multiple third selection identifiers; in response to a sixth operation acting on the first custom identifier, reading predetermined version information and configuring the predetermined version information as the service version information. By displaying the historical version information of the target service in the first editing area, it is convenient for deployment personnel to select from multiple historical version information as the service version information to configure for the target service. Of course, if the historical version information does not meet the needs of the deployment personnel, the first custom identifier can be operated to input version information that meets the requirements, i.e., the predetermined version information.

[0048] For ease of operation, specifically, you can import Excel data containing service version information through the first custom identifier.

[0049] According to another specific embodiment of this application, the second editing area includes a second custom identifier. After displaying the second interface, the method further includes: in response to a seventh operation acting on the second custom identifier, reading a predetermined server IP address and a predetermined server port number, and configuring the predetermined server IP address and the predetermined server port number as the server resource. If the automatically configured server IP address and server port number do not meet the deployment personnel's needs, the deployment personnel can input a server IP address and server port number that meet their requirements, i.e., the predetermined server port and predetermined server IP address, by operating the second custom identifier. This further ensures a high degree of flexibility in server resource configuration.

[0050] The fourth, fifth, sixth, and seventh operations can all be clicks (including single and double clicks), selection boxes, swiping, and long presses.

[0051] In one specific embodiment, the predetermined information further includes the number of clusters. Configuring predetermined information for the target service includes: configuring the first cluster number as the number of clusters for the target service, and displaying a third interface. The third interface includes a third editing area and the first cluster number. The third editing area is an area for modifying the preset cluster number, and the first cluster number is a preset number of clusters.

[0052] The third editing area includes a third custom identifier. After displaying the third interface, the method further includes: in response to an eighth operation acting on the third custom identifier, reading a second cluster count and configuring the second cluster count as the cluster count of the target service, wherein the second cluster count is the cluster count input into the third custom identifier through the eighth operation. This further ensures high flexibility in configuring the cluster count.

[0053] Step S103: Configure a database table for the target service according to the application package, and send the configuration file corresponding to the target service to the configuration center according to the application package, and display the deployment identifier on the display interface;

[0054] In the aforementioned embodiment, database tables are automatically configured for the target service based on the application package, and the configuration file corresponding to the target service is sent to the configuration center, thereby achieving the purpose of configuring service parameters on the configuration center.

[0055] To further address the issue of deployment personnel performing a large amount of repetitive work, resulting in wasted manpower, the application package specifically includes a first mapping relationship. This first mapping relationship represents the correspondence between each service and a first path, where the first path is the storage path of the configuration file within the application package. The process of sending the configuration file corresponding to the target service to the configuration center based on the application package includes: determining the first path corresponding to the target service based on the first mapping relationship; retrieving the configuration file corresponding to the target service from the application package based on the first path; and sending the target configuration file to the configuration center. In this embodiment, the storage path of the configuration file corresponding to the target service within the application package is automatically determined based on the first mapping relationship, and then these configuration files are automatically retrieved from the application package and sent to the configuration center based on the storage path. This process can be implemented without manual operation, further reducing repetitive work for deployment personnel.

[0056] According to another specific embodiment of this application, the application package further includes a second mapping relationship, which represents the correspondence between each service and a second path. The second path is the storage path of the programming statement corresponding to the service in the application package. Configuring a database table for the target service based on the application package includes: determining the second path corresponding to the target service based on the second mapping relationship; finding the programming statement corresponding to the target service from the application package based on the second path; creating a database table template; and writing the programming statement corresponding to the target service into the database table template to obtain the database table. In this embodiment, the storage path of the programming statement corresponding to the target service in the application package is automatically determined based on the second mapping relationship in the application package. Then, the programming statement is automatically found from the application package based on the storage path. Finally, the programming statement is written into the database table template to generate the database table corresponding to the target service. This process can be implemented without manual operation, further reducing repetitive work for deployment personnel.

[0057] Furthermore, to further ensure that the deployment environment of microservices meets the needs of deployment personnel, in this embodiment, a deployment identifier is displayed on the display interface. This includes displaying an environment deployment diagram and the deployment identifier on the display interface. The environment deployment diagram includes the target service configured with the predetermined information and the database table. By displaying the environment deployment diagram, deployment personnel can easily check whether the target service configured with the predetermined information and the database table meets the requirements, avoiding problems in subsequent deployment operations and further ensuring the accuracy of service deployment.

[0058] Step S104: In response to the second operation acting on the deployment identifier, the target service configured with the predetermined information and the database table is deployed.

[0059] The second operation can be a click (including single click and double click), selection box, swiping and long press on the deployment identifier.

[0060] In the microservice deployment method described above, firstly, a deployment environment template library is created, comprising multiple deployment environment templates, and displayed on the display interface. Each deployment environment template includes multiple services and their corresponding deployment environments. Then, in response to a first operation applied to the deployment environment template library, a target template is determined from the multiple deployment environment templates, and predefined information is configured for at least a portion of the target services in the target template. This predefined information includes service version information, server resources, instance resources, and an application package storing configuration files and programming statements corresponding to each service. Next, based on the application package, database tables are configured for the target service, and the configuration files corresponding to the target service are sent to the configuration center. A deployment identifier is then displayed on the display interface. Finally, in response to a second operation applied to the deployment identifier, the target service configured with the predefined information and database tables is deployed. Compared to existing technologies that require orchestrating corresponding deployment pipelines for each service and configuring deployment environment information, which necessitates deployment personnel to perform a large amount of repetitive work and wastes human resources, this application addresses the problem by creating a deployment environment template library. This library provides multiple deployment environment templates to adapt to different usage requirements. By responding to the first operation, the target template is determined, and the target service within the template is configured with predefined information and database tables. The corresponding configuration file for the target service is then sent to the configuration center. This achieves a semi-automatic deployment environment setup function, eliminating the need to configure multiple deployment pipelines, reducing repetitive work for deployment personnel, freeing up manpower, and ensuring low labor costs.

[0061] In addition, this application can build and deploy the environment semi-automatically, with low learning and usage costs for deployment personnel and easy operation.

[0062] In one specific embodiment, the deployment process of the microservices in this application is as follows:

[0063] 1) Provides multiple default deployment environment templates, including simplified mode (single data center), balanced mode (dual data centers), and performance mode (two sites, three centers). Different modes have different built-in distribution units and cluster numbers. The templates include basic information such as infrastructure (system shared environment, including Nacos and Apollo), Apollo mapping (the file paths of each service and application-level Apollo resource file in the application-level application package, the file paths of system-level Apollo resource files in the system-level application package, and the file paths of enterprise-level Apollo resource files in the enterprise-level application package), DB (Database) mapping (including the mapping of each service and DB resource file in the application package), unit information (including data center policies and database sharding policies), deployment application list, and database templates.

[0064] 2) After automatically allocating the latest version of the service for the deployment environment template, the application package is downloaded, and cluster size and other information are automatically allocated to the service. It also supports modifying the cluster size based on actual use cases, and modifying the version by importing historical versions from the product or by importing Excel data.

[0065] 3) Automatically allocate server resources and ports for the application instance list. Manually selecting instance resources or allocating resources by importing from Excel is also supported.

[0066] 4) Automatically allocate instance resources to the database for deploying environment templates.

[0067] 5) Obtain the configuration files required by each application through Apollo mapping and application-level application packages, system-level application packages, and enterprise-level application packages, and obtain the DB resource files required by each service through DB mapping and application packages.

[0068] 6) Push the acquired application configurations to the system's shared Apollo, automatically create database template instances on the allocated database resources and push DB resource data, deploy application instances on the allocated application server resources according to the set version and cluster size, and automatically generate an application deployment result list after deployment is complete.

[0069] 7) One-click deployment and usage process, the specific flowchart is as follows: Figure 2 As shown.

[0070] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.

[0071] This application also provides a microservice deployment apparatus. It should be noted that the microservice deployment apparatus of this application can be used to execute the microservice deployment method provided in this application. The microservice deployment apparatus provided in this application is described below.

[0072] Figure 3 This is a schematic diagram of a microservice deployment apparatus according to an embodiment of this application. Figure 3 As shown, the device includes:

[0073] The creation unit 10 is used to create a deployment environment template library and display it on the display interface. The deployment environment template library includes multiple deployment environment templates. Different deployment environment templates have different data center deployment architectures. Each deployment environment template includes multiple services and the deployment environment corresponding to the services.

[0074] Specifically, the deployment environment includes a shared registry center, a shared configuration center, database sharding rules, transaction rules, and database templates. Multiple deployment environment templates include single-datacenter, dual-datacenter, and two-site three-center templates. Different datacenter strategies, such as single-datacenter, dual-datacenter, and two-site three-center templates, are set according to testing and usage scenarios. The shared registry center and configuration center enable the construction of a shared system environment. The transaction rules include batch transactions and online transactions.

[0075] In practical applications, the registration center can be Nacos (a distributed registration center), and the configuration center can be Apollo (a distributed configuration center). Of course, the registration center and configuration center are not limited to these products and can be any other suitable registration center and configuration center. The data center strategy is also not limited to the single-data center template, dual-data center template, and two-site three-center template, and can also include multi-data center templates and other data center strategies.

[0076] The determining unit 20 is configured to, in response to a first operation acting on the deployment environment template library, determine a target template from a plurality of deployment environment templates and configure predetermined information for a target service, wherein the target service is at least a portion of the services in the target template, and the predetermined information includes service version information, server resources, instance resources and application packages, wherein the application packages store configuration files and programming statements corresponding to each service;

[0077] The instance resource is an application instance of the service. The programming statement can be an SQL (Structured Query Language) statement or a statement in other programming languages.

[0078] The display interface can be the display interface of a smart device such as a computer or a PAD. The first operation can be any suitable operation applied to the deployment environment template library of the display interface, such as clicking (including single click and double click), selecting, sliding, and long pressing.

[0079] In this application, the configuration files in the application package are stored in the application-level application package, the system-level application package, and the enterprise-level application package, respectively. The application-level application package stores configuration files that are only required by some services, the system-level application package stores configuration files with system numbers that are required by some systems, and the enterprise-level application package stores configuration files that are required by all services.

[0080] According to another specific embodiment of this application, the determining unit includes: a first display module, configured to, in response to the first operation, display a plurality of deployment environment templates and a first selection identifier corresponding to each deployment environment template on the display interface; and a first determining module, configured to, in response to a third operation acting on the first selection identifier corresponding to the target template, determine the target template and display a plurality of services in the target template and a second selection identifier corresponding to each service on the display interface. Through the first and third operations of the deployment personnel, the selection of the required target template from multiple deployment environment templates is realized, further realizing the semi-automatic setup function of the deployment environment, thereby further reducing the repetitive work of the deployment personnel.

[0081] The third operation can also be an operation performed on the first selection identifier, such as clicking (including single and double clicks), selecting by box, sliding, and long pressing.

[0082] To further liberate manpower and reduce repetitive work for deployment personnel, in another specific embodiment of this application, the determining unit includes: a second determining module, used to determine the target service in response to a fourth operation acting on the second selection identifier; a first configuration module, used to configure the latest version information as the service version information of the target service and display a first interface, the first interface including a first editing area and the latest version information, the first editing area being an area for modifying the service version information; a second configuration module, used to configure the server IP address and server port number as the server resources of the target service and display a second interface, the second interface including a second editing area, the server IP address and the server port number, the second editing area being an area for modifying the server IP address and server port number; and a third configuration module, used to configure the instance resources and the application package for the target service. In response to the fourth operation, the target service is determined from multiple services in the target template, and then the latest version information is automatically configured for the target service. This eliminates the need for manual configuration of the target service's version information, further ensuring a high degree of automation. A first interface, including a first editing area and the latest version information, is displayed, allowing deployment personnel to easily check whether the automatically configured service version information meets their needs. If the automatically configured service version information does not meet their needs, it can be modified through the first editing area, ensuring flexible configuration of service version information. Next, server resources are automatically configured for the target service, further improving the degree of automation. A second interface, including a second editing area, the server IP address, and the server port number, is displayed, allowing deployment personnel to easily check whether the automatically configured server resources meet their needs. If the automatically configured server resources do not meet their needs, the server IP address and server port number can be modified through the second editing area, ensuring flexible configuration of server resources. Finally, the instance resources and application package are automatically configured for the target service, further improving the degree of automation and freeing up manpower.

[0083] To further ensure configuration flexibility, in one specific embodiment of this application, the first editing area includes a first custom identifier and multiple third selection identifiers corresponding to historical version information. The device further includes one of the following: a second configuration unit, configured, after displaying the first interface, in response to a fifth operation acting on the target selection identifier, to configure the historical version information corresponding to the target selection identifier as the service version information, wherein the target selection identifier is one of the multiple third selection identifiers; and a third configuration unit, configured, after displaying the first interface, in response to a sixth operation acting on the first custom identifier, to read predetermined version information and configure the predetermined version information as the service version information. By displaying the historical version information of the target service in the first editing area, it is convenient for deployment personnel to select from multiple historical version information as the service version information to configure for the target service. Of course, if the historical version information does not meet the needs of the deployment personnel, the first custom identifier can be operated to input version information that meets the requirements, i.e., the predetermined version information.

[0084] For ease of operation, specifically, you can import Excel data containing service version information through the first custom identifier.

[0085] According to another specific embodiment of this application, the second editing area includes a second custom identifier, and the device further includes: a first reading unit, configured to, after displaying the second interface, in response to a seventh operation acting on the second custom identifier, read a predetermined server IP address and a predetermined server port number, and configure the predetermined server IP address and the predetermined server port number as the server resource. If the automatically configured server IP address and server port number do not meet the deployment personnel's needs, the deployment personnel can input a server IP address and server port number that meet the requirements, i.e., the predetermined server port and predetermined server IP address, by operating the second custom identifier, thus further ensuring a high degree of flexibility in server resource configuration.

[0086] The fourth, fifth, sixth, and seventh operations can all be clicks (including single and double clicks), selection boxes, swiping, and long presses.

[0087] In one specific embodiment, the predetermined information further includes the number of clusters, and the determining unit includes: a fourth configuration module, used to configure the first cluster number as the number of clusters of the target service, and display a third interface, the third interface including a third editing area and the first cluster number, the third editing area being an area for modifying the preset cluster number, and the first cluster number being a preset cluster number.

[0088] The third editing area includes a third custom identifier. The device further includes a second reading unit, configured to, after displaying the third interface, in response to an eighth operation acting on the third custom identifier, read a second cluster quantity and configure the second cluster quantity as the cluster quantity of the target service. The second cluster quantity is the cluster quantity input into the third custom identifier through the eighth operation. This further ensures a high degree of flexibility in configuring the cluster quantity.

[0089] The first configuration unit 30 is configured to configure a database table for the target service according to the application package, and send the configuration file corresponding to the target service to the configuration center according to the application package, and display a deployment identifier on the display interface.

[0090] In the aforementioned embodiment, database tables are automatically configured for the target service based on the application package, and the configuration file corresponding to the target service is sent to the configuration center, thereby achieving the purpose of configuring service parameters on the configuration center.

[0091] To further address the issue of deployment personnel performing a large amount of repetitive work, resulting in wasted human resources, the application package specifically includes a first mapping relationship. This first mapping relationship represents the correspondence between each service and a first path, where the first path is the storage path of the configuration file within the application package. The first configuration unit includes: a third determining module, used to determine the first path corresponding to the target service based on the first mapping relationship; a first searching module, used to find the configuration file corresponding to the target service as the target configuration file from the application package based on the first path; and a sending module, used to send the target configuration file to the configuration center. In this embodiment, the storage path of the configuration file corresponding to the target service within the application package is automatically determined based on the first mapping relationship in the application package. Then, based on the storage path, these configuration files are automatically found from the application package and sent to the configuration center. This process can be implemented without manual operation, further reducing the repetitive work of deployment personnel.

[0092] According to another specific embodiment of this application, the application package further includes a second mapping relationship, which represents the correspondence between each service and a second path. The second path is the storage path of the programming statement corresponding to the service in the application package. The first configuration unit includes: a fourth determining module, used to determine the second path corresponding to the target service according to the second mapping relationship; a second searching module, used to find the programming statement corresponding to the target service from the application package according to the second path; and a creating module, used to create a database table template, write the programming statement corresponding to the target service into the database table template, and obtain the database table. In this embodiment, the storage path of the programming statement corresponding to the target service in the application package is automatically determined according to the second mapping relationship in the application package, and then the programming statement is automatically found from the application package according to the storage path. Finally, the programming statement is written into the database table template to generate the database table corresponding to the target service. This process can be implemented without manual operation, further reducing the repetitive work of deployment personnel.

[0093] Furthermore, to further ensure that the deployment environment of microservices meets the needs of deployment personnel, in this embodiment, the first configuration unit includes a second display module, used to display an environment deployment diagram and the deployment identifier on the display interface. The environment deployment diagram includes the target service configured with the predetermined information and the database table. By displaying the environment deployment diagram, deployment personnel can easily check whether the target service configured with the predetermined information and the database table meets the requirements, avoiding problems in subsequent deployment operations and further ensuring the accuracy of service deployment.

[0094] Deployment unit 40 is configured to deploy the target service configured with the predetermined information and the database table in response to a second operation acting on the deployment identifier.

[0095] The second operation can be a click (including single click and double click), selection box, swiping and long press on the deployment identifier.

[0096] In the microservice deployment device, the isomorphic creation unit creates a deployment environment template library including multiple deployment environment templates and displays the deployment environment template library on the display interface. Each deployment environment template includes multiple services and the corresponding deployment environment. The determining unit, in response to a first operation acting on the deployment environment template library, determines a target template from the multiple deployment environment templates and configures predetermined information for at least some target services in the target template. This predetermined information includes service version information, server resources, instance resources, and an application package storing configuration files and programming statements corresponding to each service. The first configuration unit configures database tables for the target service according to the application package, sends the configuration file corresponding to the target service to the configuration center, and then displays a deployment identifier on the display interface. The deployment unit, in response to a second operation acting on the deployment identifier, deploys the target service configured with the predetermined information and database tables. Compared to existing technologies that require orchestrating corresponding deployment pipelines for each service and configuring deployment environment information, which necessitates deployment personnel to perform a large amount of repetitive work and wastes human resources, this application addresses the problem by creating a deployment environment template library. This library provides multiple deployment environment templates to adapt to different usage requirements. By responding to the first operation, the target template is determined, and the target service within the template is configured with predefined information and database tables. The corresponding configuration file for the target service is then sent to the configuration center. This achieves a semi-automatic deployment environment setup function, eliminating the need to configure multiple deployment pipelines, reducing repetitive work for deployment personnel, freeing up manpower, and ensuring low labor costs.

[0097] In addition, this application can build and deploy the environment semi-automatically, with low learning and usage costs for deployment personnel and easy operation.

[0098] The microservice deployment device includes a processor and a memory. The creation unit, the determination unit, the first configuration unit, and the deployment unit are all stored in the memory as program units. The processor executes the program units stored in the memory to implement the corresponding functions.

[0099] The processor contains a kernel, which retrieves the corresponding program units from memory. One or more kernels can be configured; by adjusting kernel parameters, the problem of existing service deployments requiring deployment personnel to perform a large amount of repetitive work, wasting human resources, can be addressed.

[0100] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0101] This invention provides a computer-readable storage medium storing a program that, when executed by a processor, implements the microservice deployment method.

[0102] This invention provides a processor for running a program, wherein the program executes the deployment method of the microservice during runtime.

[0103] This invention provides a device including a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, it performs at least the following steps:

[0104] Step S101: Create a deployment environment template library and display it on the display interface. The deployment environment template library includes multiple deployment environment templates. Different deployment environment templates have different data center deployment architectures. Each deployment environment template includes multiple services and the deployment environment corresponding to the services.

[0105] Step S102: In response to the first operation acting on the deployment environment template library, a target template is determined from a plurality of deployment environment templates, and predetermined information is configured for the target service. The target service is at least a portion of the services in the target template. The predetermined information includes service version information, server resources, instance resources, and application packages. The application packages store configuration files and programming statements corresponding to each service.

[0106] Step S103: Configure a database table for the target service according to the application package, and send the configuration file corresponding to the target service to the configuration center according to the application package, and display the deployment identifier on the display interface;

[0107] Step S104: In response to the second operation acting on the deployment identifier, the target service configured with the predetermined information and the database table is deployed.

[0108] The devices mentioned in this article can be servers, PCs, tablets, mobile phones, etc.

[0109] This application also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program having at least the following method steps:

[0110] Step S101: Create a deployment environment template library and display it on the display interface. The deployment environment template library includes multiple deployment environment templates. Different deployment environment templates have different data center deployment architectures. Each deployment environment template includes multiple services and the deployment environment corresponding to the services.

[0111] Step S102: In response to the first operation acting on the deployment environment template library, a target template is determined from a plurality of deployment environment templates, and predetermined information is configured for the target service. The target service is at least a portion of the services in the target template. The predetermined information includes service version information, server resources, instance resources, and application packages. The application packages store configuration files and programming statements corresponding to each service.

[0112] Step S103: Configure a database table for the target service according to the application package, and send the configuration file corresponding to the target service to the configuration center according to the application package, and display the deployment identifier on the display interface;

[0113] Step S104: In response to the second operation acting on the deployment identifier, the target service configured with the predetermined information and the database table is deployed.

[0114] In the embodiments described in this invention, each embodiment has its own emphasis. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.

[0115] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.

[0116] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0117] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0118] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0119] As can be seen from the above description, the embodiments described in this application achieve the following technical effects:

[0120] 1) In the microservice deployment method described in this application, firstly, a deployment environment template library including multiple deployment environment templates is created and displayed on the display interface. Each deployment environment template includes multiple services and the deployment environment corresponding to each service. Then, in response to a first operation on the deployment environment template library, a target template is determined from the multiple deployment environment templates, and predefined information is configured for at least some of the target services in the target template. The predefined information includes service version information, server resources, instance resources, and an application package storing configuration files and programming statements corresponding to each service. Then, according to the application package, a database table is configured for the target service, and the configuration file corresponding to the target service is sent to the configuration center. A deployment identifier is then displayed on the display interface. Finally, in response to a second operation on the deployment identifier, the target service configured with the predefined information and the database table is deployed. Compared to existing technologies that require orchestrating corresponding deployment pipelines for each service and configuring deployment environment information, which necessitates deployment personnel to perform a large amount of repetitive work and wastes human resources, this application addresses the problem by creating a deployment environment template library. This library provides multiple deployment environment templates to adapt to different usage requirements. By responding to the first operation, the target template is determined, and the target service within the template is configured with predefined information and database tables. The corresponding configuration file for the target service is then sent to the configuration center. This achieves a semi-automatic deployment environment setup function, eliminating the need to configure multiple deployment pipelines, reducing repetitive work for deployment personnel, freeing up manpower, and ensuring low labor costs.

[0121] 2) In the microservice deployment apparatus described in this application, the isomorphic creation unit creates a deployment environment template library including multiple deployment environment templates and displays the deployment environment template library on the display interface. Each deployment environment template includes multiple services and deployment environments corresponding to the services. The determining unit, in response to a first operation acting on the deployment environment template library, determines a target template from the multiple deployment environment templates and configures predetermined information for at least some target services in the target template. The predetermined information includes service version information, server resources, instance resources, and an application package storing configuration files and programming statements corresponding to each service. The first configuration unit configures database tables for the target service according to the application package and sends the configuration files corresponding to the target service to the configuration center, and then displays a deployment identifier on the display interface. The deployment unit, in response to a second operation acting on the deployment identifier, deploys the target service configured with the predetermined information and database tables. Compared to existing technologies that require orchestrating corresponding deployment pipelines for each service and configuring deployment environment information, which necessitates deployment personnel to perform a large amount of repetitive work and wastes human resources, this application addresses the problem by creating a deployment environment template library. This library provides multiple deployment environment templates to adapt to different usage requirements. By responding to the first operation, the target template is determined, and the target service within the template is configured with predefined information and database tables. The corresponding configuration file for the target service is then sent to the configuration center. This achieves a semi-automatic deployment environment setup function, eliminating the need to configure multiple deployment pipelines, reducing repetitive work for deployment personnel, freeing up manpower, and ensuring low labor costs.

[0122] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for deploying microservices, characterized in that, include: A deployment environment template library is created and displayed on the display interface. The deployment environment template library includes multiple deployment environment templates. Different deployment environment templates have different data center deployment architectures. Each deployment environment template includes multiple services and the deployment environment corresponding to the services. In response to a first operation acting on the deployment environment template library, a target template is determined from a plurality of deployment environment templates, and predetermined information is configured for a target service, wherein the target service is at least a portion of the services in the target template, and the predetermined information includes service version information, server resources, instance resources, and application packages, wherein the application packages store configuration files and programming statements corresponding to each of the services; According to the application package, configure a database table for the target service, and according to the application package, send the configuration file corresponding to the target service to the configuration center, and display the deployment identifier on the display interface; In response to the second operation acting on the deployment identifier, the target service configured with the predetermined information and the database tables is deployed. The application package also includes a first mapping relationship, which represents the correspondence between each service and a first path. The first path is the storage path of the configuration file in the application package. According to the application package, the configuration file corresponding to the target service is sent to the configuration center, including: Based on the first mapping relationship, determine the first path corresponding to the target service; Based on the first path, the configuration file corresponding to the target service is obtained from the application package and is the target configuration file; Send the target configuration file to the configuration center. The application package also includes a second mapping relationship, which represents the correspondence between each service and a second path. The second path is the storage path of the programming statements corresponding to the service in the application package. Based on the application package, a database table is configured for the target service, including: Based on the second mapping relationship, determine the second path corresponding to the target service; Based on the second path, the programming statement corresponding to the target service is retrieved from the application package; Create a database table template, and write the programming statements corresponding to the target service into the database table template to obtain the database table.

2. The method according to claim 1, characterized in that, In response to a first operation acting on the deployment environment template library, determining a target template from a plurality of deployment environment templates includes: In response to the first operation, multiple deployment environment templates and a first selection identifier corresponding to each deployment environment template are displayed on the display interface. In response to a third operation performed on the first selection identifier corresponding to the target template, the target template is determined, and multiple services in the target template and a second selection identifier corresponding to each service are displayed on the display interface.

3. The method according to claim 2, characterized in that, Configure reservation information for the target service, including: In response to a fourth operation performed on the second selection identifier, the target service is determined; Configure the latest version information as the service version information of the target service and display a first interface. The first interface includes a first editing area and the latest version information. The first editing area is the area for modifying the service version information. Configure the server IP address and server port number as the server resource of the target service, and display a second interface. The second interface includes a second editing area, the server IP address and the server port number. The second editing area is the area for modifying the server IP address and the server port number. Configure the instance resources and the application package for the target service.

4. The method according to claim 3, characterized in that, The first editing area includes a first custom identifier and a third selection identifier corresponding to multiple historical version information. After displaying the first interface, the method further includes one of the following: In response to a fifth operation acting on a target selection identifier, the historical version information corresponding to the target selection identifier is configured as the service version information, wherein the target selection identifier is one of a plurality of the third selection identifiers; In response to the sixth operation acting on the first custom identifier, the predetermined version information is read and configured as the service version information.

5. The method according to claim 3, characterized in that, The second editing area includes a second custom identifier. After displaying the second interface, the method further includes: In response to the seventh operation acting on the second custom identifier, the predetermined server IP address and predetermined server port number are read, and the predetermined server IP address and predetermined server port number are configured as the server resource.

6. The method according to any one of claims 1 to 5, characterized in that, The deployment identifier is displayed on the display interface, including: The environment deployment diagram and the deployment identifier are displayed on the display interface. The environment deployment diagram includes the target service configured with the predetermined information and the database table.

7. The method according to any one of claims 1 to 5, characterized in that, The deployment environment includes a shared registration center, a shared configuration center, database sharding and table partitioning rules, transaction rules, and database templates. Multiple deployment environment templates include a single data center template, a dual data center template, and a two-site three-center template. The pre-defined information also includes the number of clusters.

8. A microservice deployment apparatus, characterized in that, include: A creation unit is used to create a deployment environment template library and display it on the display interface. The deployment environment template library includes multiple deployment environment templates. Different deployment environment templates have different data center deployment architectures. Each deployment environment template includes multiple services and the deployment environment corresponding to the services. A determining unit is configured to, in response to a first operation acting on the deployment environment template library, determine a target template from a plurality of deployment environment templates and configure predetermined information for a target service, wherein the target service is at least a portion of the services in the target template, and the predetermined information includes service version information, server resources, instance resources and application packages, wherein the application packages store configuration files and programming statements corresponding to each of the services; The first configuration unit is used to configure a database table for the target service according to the application package, and to send the configuration file corresponding to the target service to the configuration center according to the application package, and to display a deployment identifier on the display interface; A deployment unit, configured to deploy the target service configured with the predetermined information and the database table in response to a second operation acting on the deployment identifier; The application package further includes a first mapping relationship, which represents the correspondence between each service and a first path, where the first path is the storage path of the configuration file in the application package. The first configuration unit includes: The third determining module is used to determine the first path corresponding to the target service based on the first mapping relationship; The first search module is used to find the configuration file corresponding to the target service from the application package based on the first path. The sending module is used to send the target configuration file to the configuration center. The application package further includes a second mapping relationship, which represents the correspondence between each service and a second path, where the second path is the storage path of the programming statement corresponding to the service in the application package. The first configuration unit further includes: The fourth determining module is used to determine the second path corresponding to the target service based on the second mapping relationship; The second search module is used to find the programming statement corresponding to the target service from the application package according to the second path; A creation module is used to create a database table template, and the programming statements corresponding to the target service are written into the database table template to obtain the database table.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein the program performs the method according to any one of claims 1 to 7.

10. A processor, characterized in that, The processor is used to run a program, wherein the program executes the method according to any one of claims 1 to 7 when it runs.

11. An electronic device, characterized in that, include: One or more processors, a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising methods for performing any one of claims 1 to 7.

Citation Information

Patent Citations

  • Application deployment method and device, equipment and storage medium

    CN110362318A

  • Service arrangement method and system based on application environment

    CN111367534A