Application full-life-cycle management method, system and device based on application center and medium

Through the full life cycle management method of the application center, the complexity of application deployment and insufficient mirror management in the existing technology are solved, efficient and flexible application management and operation and maintenance processes are achieved, and deployment efficiency and user experience are improved.

CN119149054APending Publication Date: 2024-12-17ZHEJIANG SUPCON INFORMATION TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411107298.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-13
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

The existing application deployment technology is complicated to operate, complex configuration, lacks a unified management mechanism, insufficient mirror management functions, affects deployment efficiency and consistency, and ignores operation and maintenance management needs, resulting in inflexible response during operation and maintenance.

Method used

Provides an application-center-based application full life cycle management method, including receiving and processing software registration requests, performing application deployment, upgrading and uninstallation operations, supporting non-containerized and containerized deployment, realizing visual upload and rapid construction of mirrors, and automation Operation and maintenance process.

Benefits of technology

It simplifies the application management process, improves deployment efficiency and user experience, ensures the continuous availability and security of applications, reduces operation and maintenance complexity and human error risks, and realizes the full life cycle management of applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119149054A_ABST
    Figure CN119149054A_ABST
Patent Text Reader

Abstract

The invention relates to an application full-life-cycle management method, system and device based on an application center and a medium, and the method comprises the steps: receiving and processing an input software registration request, and calling a registration interface of a software platform to carry out application registration; executing non-containerized or containerized deployment operation on the edge side based on an input application deployment instruction containing a deployment mode and a specified application in combination with a mirror image pre-stored in a mirror image warehouse; in response to an input application upgrading instruction, stopping using the current application, executing upgrading operation on the edge side according to the selected deployment mode, and restarting the upgraded application after the application upgrading is completed; and in response to an input application uninstalling instruction, the current application is stopped, and an application uninstalling operation is executed on the edge side. By means of the method, full-life-cycle management, including registration, deployment, upgrading, destruction and other operations, of all the applications in the platform is achieved, and the efficiency and flexibility of application management are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer software technology, and in particular to an application life cycle management method, system, device and medium based on an application center. Background Art

[0002] Current application deployment mainly relies on network proxy, KBS deployment and third-party redirection, etc. However, these methods have exposed some significant problems in practical applications.

[0003] First, the existing application deployment technology has cumbersome operation process, complex configuration, and lacks simple and efficient operation procedures. This not only increases the difficulty and time cost of deployment, but also affects the overall work efficiency.

[0004] Secondly, there is a lack of a unified management mechanism between various deployment methods. This decentralized management and configuration process greatly reduces the efficiency and consistency of management. In particular, the current image management function has obvious shortcomings, such as not supporting direct image upload and download functions, which limits the ability to quickly build and deploy images on site.

[0005] In addition, the existing application center mainly focuses on lifecycle management, while ignoring the pre-emptive operation and maintenance management needs. This results in the inability to achieve rapid response and flexible management in the actual operation and maintenance process. Especially when it is necessary to directly upload or download images, the existing technology often requires additional processing methods, which increases the complexity and time cost of the operation.

[0006] Therefore, the current application deployment method has many problems in technical operation, unified management, and image processing, which urgently need to be improved and optimized. Summary of the invention

[0007] 1. Technical issues to be resolved

[0008] In view of the above-mentioned shortcomings and deficiencies of the prior art, the present invention provides an application life cycle management method, system, device and medium based on an application center, which solves the technical problems of the existing application deployment method in terms of technical operation, unified management and image processing.

[0009] (II) Technical solution

[0010] In order to achieve the above object, the main technical solutions adopted by the present invention include:

[0011] In a first aspect, an embodiment of the present invention provides an application lifecycle management method based on an application center, including:

[0012] Receive and process input software registration requests containing basic information, configuration menus, and APIs, and call the registration interface of the software platform to register the application;

[0013] Based on the input application deployment instructions including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository, a non-containerized deployment operation is performed on the edge side or a containerized deployment operation is performed using the specified application and the corresponding image;

[0014] In response to the input application upgrade instruction, the current application is automatically disabled or according to the input APP disable instruction, and the corresponding application upgrade operation is performed on the edge side according to the selected deployment mode, and after the application upgrade is completed, the disabled application is restarted;

[0015] In response to the input application uninstallation instruction, the current application is disabled automatically or according to the input APP disablement instruction, and the corresponding application uninstallation operation is performed on the edge side.

[0016] Optionally, receiving and processing an input software registration request including basic information, a configuration menu, and an API, and calling a registration interface of the software platform to register the application includes:

[0017] Provide an interface or screen to receive software registration requests input by users, including basic information, configuration menus, and APIs, and verify the received registration information;

[0018] After the information is verified, the registration information is parsed, classified and stored;

[0019] After processing the registration information, the registration interface of the software platform is called to package the processed registration information into a registration request data packet and pass it to the software platform after encryption or signature processing;

[0020] Receive the registration result returned by the software platform, including the creation of application records and allocation of resources;

[0021] If the registration is successful, the newly registered application will be added to the management list of the application center, and a success prompt message will be provided to the user;

[0022] If registration fails, inform the user of the reason for the failure and provide corresponding solutions or suggestions.

[0023] Optionally, after receiving and processing the input software registration request including basic information, configuration menu and API, and calling the registration interface of the software platform to register the application, it also includes:

[0024] After the application is successfully registered, the roles or users who are granted access to the registered application are determined based on preset rules or administrator input;

[0025] Authorize registered applications to specific roles or users and configure corresponding permissions so that each authorized role or user can start, use and manage applications according to the configured permissions;

[0026] Registered application icons or shortcuts are added to the desktop based on role or user preferences, default configuration, or administrator instructions.

[0027] Optionally, based on the input application deployment instruction including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository, before performing the non-containerized deployment operation on the edge side or performing the containerized deployment operation using the specified application and the corresponding image, the method further includes:

[0028] Get the image file from at least one source in the development environment, test environment, or production environment;

[0029] Parse the image file to obtain the image's layer structure, dependencies, size, and configuration files;

[0030] With the help of specialized data visualization software, image processing libraries or custom-developed visualization components, the layer structure, dependency, size and configuration files of the image are visualized and converted to obtain a visualized image file;

[0031] Upload the visualization image file to the image warehouse, and assign a unique identifier and version information to each visualization image file.

[0032] Optionally, based on the input application deployment instruction including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository, performing a non-containerized deployment operation on the edge side or performing a containerized deployment operation using the specified application and the corresponding image includes:

[0033] Receive and parse input application deployment instructions including deployment mode and specified application;

[0034] If the parsed instructions specify non-containerized deployment, directly install and configure the specified application in the edge environment;

[0035] If the parsed instruction specifies containerized deployment, according to the parsed instruction, access the image repository where the application image is pre-stored, retrieve the image file corresponding to the specified application, and perform preparation work including decompression and verification of image integrity;

[0036] If the image does not exist, an error message is fed back to the user and the operation is terminated;

[0037] If the image exists, the pulled image is used to create and start a container on the edge side, and deployment operations including allocating necessary resources, configuring the network environment, and starting the application service in the container are performed;

[0038] After deployment is complete, the application's running status is automatically verified to ensure that the application has been successfully deployed and meets the set running conditions;

[0039] Feedback the results of the deployment to the user, including success or failure status, and related error messages.

[0040] Optionally, in response to the input application upgrade instruction, automatically or according to the input APP disabling instruction, disabling the current application, and performing the corresponding application upgrade operation on the edge side for the selected deployment mode, and restarting the disabled application after the application upgrade is completed includes:

[0041] Receive and identify an input application upgrade instruction including a unique identifier of an application to be upgraded and upgraded configuration information;

[0042] Before executing the application upgrade instruction, the currently running application is automatically disabled or the currently running application is disabled according to the input APP disable instruction;

[0043] For the selected deployment mode, based on the unique identifier of the application to be upgraded and the upgraded configuration information, dynamically adjust the network routing rules on the edge side to ensure the correct direction of network traffic during and after the upgrade, replace the application package to update or repair the function, modify the YAML configuration file to define the behavior of the service, and modify the access URL to adjust the new service access point. One or more upgrade operations;

[0044] After the application upgrade is completed, automatic verification of the upgrade results including checking the running status, functions and performance of the new application is performed. If at least one problem exists, the application is automatically rolled back to the previous version or an error message is provided to allow the administrator to intervene.

[0045] After confirming that the app upgrade was successful, restart the disabled app.

[0046] Optionally, in response to the input application uninstallation instruction, automatically or according to the input APP disablement instruction, deactivating the current application, and performing a corresponding application uninstallation operation on the edge side includes:

[0047] Receive and identify an input application uninstallation instruction including a unique identifier of an application to be uninstalled;

[0048] Before executing the app uninstallation command, automatically deactivate the currently running app or deactivate the currently running app according to the input APP disable command;

[0049] According to the unique identifier of the application to be uninstalled, an application uninstallation operation including deleting application files, clearing application data, and releasing system resources occupied by the application is performed on the edge side;

[0050] After the application is uninstalled, at least one of the following uninstallation results is automatically verified: confirming whether the application file has been deleted through the API or command of the file system, checking whether the registry or related configuration has been cleared, checking whether there are still services or processes related to the uninstalled application running, listing currently running services and processes through system commands or APIs to confirm whether the relevant items of the application have been uninstalled, confirming whether the shared files have been processed by checking the number of file links or the shared resource management mechanism set in the application center, and continuously monitoring data including checking system resource usage, abnormal restart or crash within a set time after the uninstallation is completed;

[0051] If at least one problem exists, automatically revert to the previous application or provide an error message to allow administrator intervention;

[0052] After confirming that the app was uninstalled successfully, restart the disabled app.

[0053] In a second aspect, an embodiment of the present invention provides an application lifecycle management system based on an application center, including:

[0054] The application registration module is used to receive and process the input software registration request containing basic information, configuration menu and API, and call the registration interface of the software platform to register the application;

[0055] An application deployment module, which is used to perform non-containerized deployment operations on the edge side or to perform containerized deployment operations using the specified application and the corresponding image based on the input application deployment instructions including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository;

[0056] An application upgrade module, which is used to respond to an input application upgrade instruction, automatically or according to an input APP disable instruction to disable the current application, and perform corresponding application upgrade operations on the edge side according to the selected deployment mode, and restart the disabled application after the application upgrade is completed;

[0057] The application uninstallation module is used to respond to the input application uninstallation instruction, automatically or according to the input APP disabling instruction to disable the current application, and perform the corresponding application uninstallation operation on the edge side.

[0058] In a third aspect, an embodiment of the present invention provides an application lifecycle management device based on an application center, including:

[0059] Software platform, used to provide application registration interface and functional support;

[0060] The edge side is used to provide an environment for performing application deployment, upgrade, and uninstallation operations;

[0061] The application center interacts with the software platform and the edge side respectively, and is used to execute the application life cycle management method based on the application center as described above.

[0062] In a fourth aspect, an embodiment of the present invention provides a computer-readable medium having computer executable instructions stored thereon, characterized in that when the executable instructions are executed by a processor, the application life cycle management method based on the application center as described above is implemented.

[0063] (III) Beneficial effects

[0064] The beneficial effects of the present invention are:

[0065] First, the present invention can receive and process software registration requests containing basic information, configuration menus, and APIs, and then call the registration interface of the software platform to complete application registration. This function provides a convenient way for software developers to initialize and manage applications, ensuring the accuracy and consistency of application information, and laying a solid foundation for subsequent application management and deployment.

[0066] Next, based on the input application deployment instructions including the deployment method and the specified application, the present invention can combine the image pre-stored in the image repository to flexibly perform non-containerized or containerized deployment operations on the edge side using the specified application and the corresponding image. This flexibility not only allows users to choose different deployment methods according to their needs, but also supports containerized and non-containerized deployment, which improves the flexibility and applicability of deployment. When containerization technology is used, the application environment is effectively isolated, and the security and stability of the application are improved. At the same time, through visual uploading and rapid construction, the operational process of image management is simplified, and operational efficiency and user experience are improved. Users can quickly deploy the constructed image to the on-site application, realizing the function of rapid deployment and update of applications.

[0067] Furthermore, when receiving an application upgrade instruction, the present invention can automatically or according to the input APP disable instruction disable the current application, and perform the corresponding application upgrade operation on the edge side for the selected deployment mode. After the upgrade is completed, the disabled application is automatically restarted to ensure the continuous availability of the application and the uninterrupted service.

[0068] Finally, for the application uninstallation instruction, the present invention can also automatically or according to the input APP disable instruction disable the current application, and perform the corresponding application uninstallation operation on the edge side. This function not only helps users to efficiently manage the application life cycle, but also simplifies the operation and maintenance work through the automated process, reducing the risk of human error.

[0069] In general, the present invention realizes the full life cycle management of applications through a series of efficient and flexible operations, including key links such as registration, deployment, upgrade and uninstallation. This not only simplifies the complexity of application management, but also improves the reliability of the system and user experience, simplifies the application deployment process and the complexity of application management, and also improves operational efficiency and user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0070] Figure 1 A flowchart of an application lifecycle management method based on an application center provided in an embodiment of the present invention;

[0071] Figure 2 A specific flow chart of step S1 of the application lifecycle management method based on the application center provided in an embodiment of the present invention;

[0072] Figure 3 A schematic diagram of the application registration and deployment process of the application lifecycle management method based on the application center provided in an embodiment of the present invention;

[0073] Figure 4 A specific flow chart of step S2 of the application lifecycle management method based on the application center provided in an embodiment of the present invention;

[0074] Figure 5 A schematic diagram of image participation in the application deployment process of the application lifecycle management method based on the application center provided by an embodiment of the present invention;

[0075] Figure 6 A specific flow chart of step S3 of the application lifecycle management method based on the application center provided in an embodiment of the present invention;

[0076] Figure 7 A schematic diagram of an application upgrade process of an application lifecycle management method based on an application center provided in an embodiment of the present invention;

[0077] Figure 8 A specific flow chart of step S4 of the application lifecycle management method based on the application center provided in an embodiment of the present invention;

[0078] Fig. 9 A schematic diagram of an application uninstallation process of an application lifecycle management method based on an application center provided in an embodiment of the present invention;

[0079] Fig.10 An interactive schematic diagram of an application lifecycle management system based on an application center provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0080] In order to better explain the present invention and facilitate understanding, the present invention is described in detail below through specific implementation modes in conjunction with the accompanying drawings.

[0081] like Figure 1 As shown, an application life cycle management method based on an application center proposed in an embodiment of the present invention includes: receiving and processing an input software registration request containing basic information, a configuration menu, and an API, and calling the registration interface of the software platform to register the application; based on the input application deployment instruction containing the deployment method and the specified application, and in combination with the image pre-stored in the image repository, performing non-containerized deployment operations on the edge side or using the specified application and the corresponding image to perform containerized deployment operations; in response to the input application upgrade instruction, automatically or according to the input APP disable instruction, deactivating the current application, and for the selected deployment method, performing the corresponding application upgrade operation on the edge side, and after the application upgrade is completed, restarting the disabled application; in response to the input application uninstall instruction, automatically or according to the input APP disable instruction, deactivating the current application, and performing the corresponding application uninstall operation on the edge side.

[0082] First, the present invention can receive and process software registration requests containing basic information, configuration menus, and APIs, and then call the registration interface of the software platform to complete application registration. This function provides a convenient way for software developers to initialize and manage applications, ensuring the accuracy and consistency of application information, and laying a solid foundation for subsequent application management and deployment.

[0083] Next, based on the input application deployment instructions including the deployment method and the specified application, the present invention can combine the image pre-stored in the image repository to flexibly perform non-containerized or containerized deployment operations on the edge side using the specified application and the corresponding image. This flexibility not only allows users to choose different deployment methods according to their needs, but also supports containerized and non-containerized deployment, which improves the flexibility and applicability of deployment. When containerization technology is used, the application environment is effectively isolated, and the security and stability of the application are improved. At the same time, through visual uploading and rapid construction, the operational process of image management is simplified, and operational efficiency and user experience are improved. Users can quickly deploy the constructed image to the on-site application, realizing the function of rapid deployment and update of applications.

[0084] Furthermore, when receiving an application upgrade instruction, the present invention can automatically or according to the input APP disable instruction disable the current application, and perform the corresponding application upgrade operation on the edge side for the selected deployment mode. After the upgrade is completed, the disabled application is automatically restarted to ensure the continuous availability of the application and the uninterrupted service.

[0085] Finally, for the application uninstallation instruction, the present invention can also automatically or according to the input APP disable instruction disable the current application, and perform the corresponding application uninstallation operation on the edge side. This function not only helps users to efficiently manage the application life cycle, but also simplifies the operation and maintenance work through the automated process, reducing the risk of human error.

[0086] In general, the present invention realizes the full life cycle management of applications through a series of efficient and flexible operations, including key links such as registration, deployment, upgrade and uninstallation. This not only simplifies the complexity of application management, but also improves the reliability of the system and user experience, simplifies the application deployment process and the complexity of application management, and also improves operational efficiency and user experience.

[0087] In order to better understand the above technical solution, exemplary embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. Although exemplary embodiments of the present invention are shown in the accompanying drawings, it should be understood that the present invention can be implemented in various forms and should not be limited by the embodiments described herein. On the contrary, these embodiments are provided to enable a clearer and more thorough understanding of the present invention and to fully convey the scope of the present invention to those skilled in the art.

[0088] Specifically, an application lifecycle management method based on an application center includes:

[0089] S1. Receive and process the input software registration request containing basic information, configuration menu and API, and call the registration interface of the software platform to register the application.

[0090] Furthermore, if Figure 2 As shown, step S1 includes:

[0091] S11. Provide an interface or screen for receiving a software registration request input by a user including basic information, a configuration menu, and an API, and verifying the received registration information.

[0092] refer to Figure 3 In the application center, a dedicated interface or user interface is provided to receive software registration requests input by users (especially administrators). These requests contain key data such as basic information, configuration menus, and APIs. After receiving this information, the verification process is initiated to conduct a comprehensive check on the integrity and accuracy of the basic information, and also to verify whether the configuration menus and APIs comply with the preset formats and specifications. This step is an important part of ensuring the correctness and security of software registration information.

[0093] S12. After the information is verified, the registration information is processed including parsing, classification and storage.

[0094] S13. After processing the registration information, call the registration interface of the software platform, package the processed registration information into a registration request data packet and pass it to the software platform after encryption or signature processing to ensure the security of data transmission.

[0095] S14. Receive the registration result returned by the software platform, including the creation of application records and the allocation of resources.

[0096] S15. If the registration is successful, the newly registered application is added to the management list of the application center, and a success prompt message is provided to the user; if the registration fails, the user is informed of the reason for the failure and corresponding solutions or suggestions are provided.

[0097] Through the above steps, the application center can receive and process software registration requests containing basic information, configuration menus, and APIs, and call the registration interface of the software platform to complete the application registration process. This ensures that new applications can be correctly added to the management list, laying the foundation for subsequent image management and deployment processes.

[0098] Further, after step S1, Figure 3 As shown, it also includes: after the application is successfully registered, according to the preset rules or the input of the administrator, determining the role or user who is granted the permission to access the registered application. Then, authorizing the registered application to the determined role or user and configuring the corresponding permissions, so that each authorized role or user can start, use and manage the application according to the configured permissions. Finally, according to the role or user's preference settings, default configuration or the administrator's instructions, the registered application icon or shortcut is added to the desktop.

[0099] Through the above steps, the application center can effectively authorize the registered application to the corresponding role after the application is successfully registered, and add the application to the desktop or other easily accessible locations, thereby improving user experience and work efficiency.

[0100] S2. Based on the input application deployment instructions including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository, a non-containerized deployment operation is performed on the edge side or a containerized deployment operation is performed using the specified application and the corresponding image.

[0101] Furthermore, before step S2, it also includes: obtaining an image file from at least one source of a development environment, a test environment, or a production environment. Parsing the image file to obtain the layer structure, dependency, size, and configuration file of the image. Visually converting the layer structure, dependency, size, and configuration file of the image with the help of specialized data visualization software, an image processing library, or a custom-developed visualization component to obtain a visualized image file. Uploading the visualized image file to the image warehouse, and assigning a unique identifier and version information to each visualized image file.

[0102] Before image visualization, you first need to collect and organize the data related to the image, including image metadata (such as name, version, size, etc.), dependencies, configuration files, and information such as the applications and data contained in the image.

[0103] Choose appropriate visualization tools and technologies based on specific needs and scenarios. For example, you can use Docker visualization tools such as Kitematic and Portainer, which provide a friendly graphical interface that can intuitively display the list, details, and dependencies of images.

[0104] Specifically, all available images can be displayed in the form of a table or list, including the image name, version, creation time and other information. When a user selects an image, detailed information about the image can be displayed, such as the image's layer structure, history, configuration file content, etc. This helps users to have a deeper understanding of the image's composition and change history. The dependency relationship between images is displayed graphically to help users better understand the composition of images and their connections.

[0105] The present invention realizes the visualization of uploading images to the image warehouse, simplifies the operation process, and improves the user experience. Through the custom construction method, new images can be quickly generated and uploaded to the warehouse, realizing the function of rapid deployment to field applications.

[0106] Furthermore, if Figure 3 and Figure 4 , step S2 comprises:

[0107] S21. Receive and parse an input application deployment instruction including a deployment method and a specified application.

[0108] S22a. If the parsed instruction specifies a non-containerized deployment, the specified application is directly installed and configured in the edge environment.

[0109] S22b. If the parsed instruction specifies containerized deployment, according to the parsed instruction, access the image repository where the application image is pre-stored, retrieve the image file corresponding to the specified application, and perform preparatory work including decompression and verification of image integrity.

[0110] If the parsed deployment instructions explicitly specify the containerized deployment method, pull the image corresponding to the application from the image repository. After retrieving the corresponding image file, download it and decompress it locally. The decompression process is to prepare to load the image file into the container to ensure that the container can be successfully created and run. At the same time, the integrity of the downloaded image will be verified to ensure that the image file has not been tampered with or damaged during the download process, thereby ensuring the stability and security of subsequent deployment.

[0111] In a specific embodiment, Figure 5 As shown, you first need to select the image file corresponding to the application you want to deploy from the image repository on the interface. This step is the key to ensure that subsequent application services can be deployed based on the correct application version and environment.

[0112] Next, you need to select a configuration file. These configuration files usually contain various parameters and settings required for the application to run, such as network configuration, storage settings, and other application-specific configuration information. Selecting the appropriate configuration file ensures that the application can run as expected after deployment.

[0113] After selecting the image file and configuration file, you can execute the deployment command. This command will trigger the deployment of the application based on the selected image and configuration. According to the preset process, a series of operations such as container creation, configuration, and startup are automatically completed.

[0114] When the application service is successfully started, users can access the newly deployed application through the specified domain name or IP address. This means that the application has successfully run in the target environment and can accept and process requests from users. The entire process is carried out through a graphical interface, allowing users to intuitively manage and monitor the deployment status of the application, thereby greatly improving the efficiency and accuracy of deployment.

[0115] The above steps describe in detail the entire process from receiving deployment instructions to completing application deployment, covering both non-containerized and containerized deployment methods, and taking into account aspects such as error handling, monitoring management, and update maintenance.

[0116] S23a: If the image does not exist, an error message is fed back to the user and the operation is terminated.

[0117] S23b. If the image exists, create and start a container on the edge side using the pulled image, and perform deployment operations including allocating necessary resources, configuring the network environment, and starting the application service in the container.

[0118] After confirming that the required image exists and has been successfully pulled locally, the next step is to use this image to create and start a new container on the edge side. In this process, the necessary resources are first allocated to the container, including computing resources, memory resources, etc., to ensure that the container can run normally and handle various tasks.

[0119] Next, configure the container's network environment. This includes setting the container's network connection parameters, ensuring that the container can communicate with other services or external networks, and configuring any necessary network security policies. The correct configuration of the network environment is critical to the stable operation of the container and the secure transmission of data.

[0120] Finally, start the application service in the container. This usually involves loading the application configuration file, initializing the application state, and starting the main process of the application. During the startup process, monitor the running status of the application and ensure that it works normally as expected. If the application service starts successfully, the container is ready to handle requests from users or other services.

[0121] Through this series of deployment operations, we can ensure that a fully functional container is successfully created and started on the edge side using the pulled image, providing a solid foundation for subsequent application operation and management.

[0122] S24. After the deployment is completed, the running status of the application is automatically verified to ensure that the application has been successfully deployed and can meet the set running conditions.

[0123] S25. Feedback the deployment result to the user, including the success or failure status and related error information.

[0124] In a specific embodiment, if Figure 3 As shown in the figure, the administrator logs in to the application center and finds and selects the "Deploy APP" option on the interface. This is the first step to start deploying a new application.

[0125] Next, the administrator selects a suitable deployment method from a variety of deployment methods. These deployment methods may include network proxy, KBS deployment, or third-party redirection, each of which has its own specific usage scenarios and advantages. The administrator needs to carefully consider and select the most appropriate deployment method based on the characteristics of the application and deployment requirements.

[0126] After selecting the deployment method, the application center will start to perform application deployment operations on the edge side. During this process, the application center will automatically complete a series of deployment tasks according to the selected deployment method, including but not limited to image pulling, container creation, resource allocation, network configuration, and application startup. The application center will ensure the automation and accuracy of the entire deployment process to reduce the workload of administrators.

[0127] When the application deployment operation is completed, the administrator can view the newly deployed application in the "My Applications" module of the application center. To facilitate subsequent use and management, the administrator can choose to add the application to the desktop. In this way, the newly deployed application can be quickly accessed and used directly from the desktop.

[0128] S3. In response to the input application upgrade instruction, the current application is automatically disabled or disabled according to the input APP disable instruction, and the corresponding application upgrade operation is performed on the edge side according to the selected deployment method, and after the application upgrade is completed, the disabled application is restarted.

[0129] Furthermore, if Figure 6 As shown, step S3 includes:

[0130] S31, receiving and identifying an input application upgrade instruction including a unique identifier of an application to be upgraded and upgraded configuration information. The unique identifier is used to determine the specific application to be upgraded, and the upgraded configuration information provides parameters and settings required during the upgrade process.

[0131] S32. Before executing the application upgrade instruction, automatically deactivate the currently running application or deactivate the currently running application according to the input APP disable instruction. This step is to prevent conflicts or data damage between the new and old versions of the application during the upgrade process. If a specific APP disable instruction is received, the corresponding application will also be deactivated according to the instruction.

[0132] S33. For the selected deployment method, based on the unique identifier of the application to be upgraded and the upgraded configuration information, dynamically adjust the network routing rules on the edge side to ensure the correct direction of network traffic during and after the upgrade, replace the application package to update or repair the function, modify the YAML configuration file to define the behavior of the service, and modify the access URL to adjust the new service access point. One or more upgrade operations.

[0133] Specifically, dynamically adjust network routing rules: ensure that network traffic can be correctly directed to the new application version during and after the upgrade process to avoid service interruption or data loss. Replace application packages: receive and process new application packages to achieve seamless replacement of old application packages. This usually involves deploying the new version of the application package to the server and replacing the old version of the application package. Modify YAML configuration files: parse and update YAML configuration files to adapt to the functional and performance requirements of the new version of the application. YAML configuration files usually contain various settings and parameters of the application, which may need to be adjusted accordingly based on the new version of the application. Modify access URLs: modify and update the access URLs of the application to ensure that users can access the service through the updated address. This is usually to ensure that users can still access the application smoothly after the upgrade.

[0134] S34. After the application upgrade is completed, automatic verification of the upgrade results including checking the running status, functions and performance of the new application is performed. If at least one problem exists, the system automatically rolls back to the previous version or provides error information to allow the administrator to intervene. This step is to ensure stability and reliability and avoid service interruption or performance degradation due to the upgrade operation.

[0135] S35. After confirming that the application upgrade is successful, restart the disabled application. After restarting the application, continue to monitor the application's running status and performance to ensure that everything is running normally.

[0136] In a specific embodiment, if Figure 7 As shown in the figure, when the administrator determines that an application needs to be upgraded, he logs in to the application center, which is the starting point of the entire upgrade process.

[0137] The App Center receives the administrator's login request, verifies their identity, and provides access rights. Once the administrator successfully logs in, the App Center will display a list of deployed applications for them to choose from.

[0138] After the administrator selects the application to be upgraded, the App Center will receive this selection instruction. In order to ensure the security and stability of the upgrade process, the App Center will provide an option to "disable APP". When the administrator clicks this button, the App Center will immediately stop the external service of the application to prevent users from accessing it during the upgrade process.

[0139] After that, the administrator clicks the "Upgrade APP" button, and the Application Center receives this instruction and starts preparing for the upgrade operation. The Application Center will ask the administrator to determine the deployment method used for the upgrade and formulate a specific upgrade strategy based on this choice.

[0140] After determining the deployment method, the application center will automatically perform a series of necessary modification operations. This may include dynamically adjusting network routing rules, receiving and processing new application packages, parsing and updating YAML configuration files, and modifying access URLs. All these operations are automatically completed by the application center to ensure accuracy and efficiency.

[0141] During the upgrade process, the App Center will also automatically verify the running status, functions and performance of the new application. If any problems are found, the App Center will automatically roll back to the previous version or provide error information so that the administrator can intervene in time.

[0142] After the upgrade is complete, the App Center will receive the administrator's "Enable APP" instruction and immediately restore access to the app. This step is also completed automatically by the App Center to ensure that users can smoothly access the new version of the app.

[0143] S4. In response to the input application uninstallation instruction, the current application is automatically disabled or disabled according to the input APP disablement instruction, and a corresponding application uninstallation operation is performed on the edge side.

[0144] Furthermore, if Figure 8 As shown, step S4 includes:

[0145] S41, receiving and identifying an input application uninstallation instruction including a unique identifier of an application to be uninstalled. This unique identifier is the key to accurately specifying the application to be uninstalled, and it ensures that the target application can be accurately identified.

[0146] S42: Before executing the application uninstallation instruction, automatically deactivate the currently running application or deactivate the currently running application according to the input APP disablement instruction. This step is to ensure that no data corruption or operation conflict occurs during the uninstallation process, and also to protect stability and security.

[0147] S43. Based on the unique identifier of the application to be uninstalled, the edge side performs an application uninstallation operation including deleting application files, clearing application data, and releasing system resources occupied by the application. This operation includes several key steps: first, deleting application files, which are the basis for the operation of the application. Deleting them means that the application can no longer be started; second, clearing application data, including the user's personal settings, cache files, etc., to ensure that the uninstalled application does not leave any traces; finally, releasing the system resources occupied by the application, such as memory, CPU, etc., and releasing these resources back to the system for use by other applications or processes. After this series of operations is completed, the application is uninstalled.

[0148] S44. After the application is uninstalled, perform at least one of the following automatic verification operations on the uninstallation result: confirm whether the application file has been deleted through the file system API or command, check whether the registry or related configuration has been cleared, check whether there are still services or processes related to the uninstalled application running, list the currently running services and processes through system commands or APIs to confirm whether the relevant items of the application have been uninstalled, confirm whether the shared files have been processed by checking the number of file links or the shared resource management mechanism set in the application center, and continuously monitor data including checking system resource usage, abnormal restart or crash within a set time after the uninstallation is completed.

[0149] Specifically, confirm whether the application files have been deleted: Use the file system API or command to check whether the related files of the previously uninstalled application have been completely deleted from the file system. This is an important step to ensure that the application has been physically removed.

[0150] Check whether the registry or related configurations have been cleared: For some operating systems, such as Windows, the registry is a key part for storing configuration information. Check whether there are any entries or key values ​​related to the uninstalled application in the registry to ensure that these configurations have been cleared.

[0151] Check if related services or processes are still running: Sometimes, even if the main files of an app have been deleted, its related services or background processes may still be running. Check Task Manager or the related process list to confirm that no services or processes related to the uninstalled app are still active.

[0152] List currently running services and processes to confirm uninstallation: Obtain a list of all currently running services and processes through system commands or APIs, and further verify whether the related items of the previously uninstalled application have completely disappeared from the running list.

[0153] Confirm whether shared files have been processed: In some cases, the app may use shared files. Check the number of links to the file or use the shared resource management mechanism set up in the app center to confirm whether these shared files have been properly processed to avoid leaving any potential problems.

[0154] Continuous monitoring: After the uninstallation is complete, various key indicators are continuously monitored, such as resource usage (CPU, memory, disk, etc.), abnormal restarts or crashes. This data is critical to assessing the impact of the uninstallation operation on stability.

[0155] S45. If at least one problem exists, automatically reinstall the previous application or provide an error message to allow an administrator to intervene.

[0156] S46: After confirming that the application is successfully uninstalled, restart the disabled application. This step is to restore the normal operation of the application and ensure that the user can continue to seamlessly use other unaffected applications.

[0157] like Fig. 9 As shown in Figure 1, when an application is no longer needed, the administrator will log in to the application center, which is the starting point of the entire uninstallation process. As a centralized management platform, the application center provides comprehensive management functions for all applications.

[0158] Once the administrator successfully logs in, the application center will display a list of deployed applications for selection. The administrator selects the application to be uninstalled from the list. This is the first step of the uninstallation operation, ensuring that the correct target is selected.

[0159] To ensure that no user can access the app being uninstalled during the uninstall process, the administrator will click the "Disable APP" button. After receiving this instruction, the App Center will immediately stop the external service of the app, thereby preventing users from accessing it during the uninstall process and ensuring the safety of the uninstall process.

[0160] The administrator then clicks the "Uninstall APP" button to completely delete the app and its related data. After receiving this instruction, the App Center will start the uninstallation operation. During this process, the App Center will ensure the release of resources, including deleting app files, clearing app data, and releasing system resources occupied by the app. All these operations are completed automatically by the App Center to ensure accuracy and efficiency.

[0161] During the uninstallation process, the App Center will also perform necessary verification operations to ensure the thoroughness and stability of the uninstallation. This includes confirming whether the application files have been deleted, checking whether the registry or related configurations have been cleared, and checking whether there are still services or processes related to the uninstalled application running. If any problems are found, the App Center will provide corresponding error information so that the administrator can intervene in time.

[0162] When the App Center successfully completes the uninstallation operation and passes all verification steps, it will provide the administrator with a prompt message indicating that the uninstallation was successful. This step is to let the administrator understand the results of the uninstallation operation and ensure the effective use of resources.

[0163] In addition, if Fig.10 As shown, an embodiment of the present invention provides an application lifecycle management system based on an application center, including:

[0164] The application registration module is used to receive and process the input software registration request containing basic information, configuration menu and API, and call the registration interface of the software platform to register the application.

[0165] The application deployment module is used to perform non-containerized deployment operations on the edge side or perform containerized deployment operations using specified applications and corresponding images based on the input application deployment instructions including the deployment method and the specified application, and in combination with the images pre-stored in the image repository.

[0166] The application upgrade module is used to respond to the input application upgrade instruction, automatically or according to the input APP disabling instruction to disable the current application, and perform the corresponding application upgrade operation on the edge side according to the selected deployment method, and restart the disabled application after the application upgrade is completed.

[0167] The application uninstallation module is used to respond to the input application uninstallation instruction, automatically or according to the input APP disabling instruction to disable the current application, and perform the corresponding application uninstallation operation on the edge side.

[0168] In addition, an embodiment of the present invention also provides an application lifecycle management device based on an application center, including: a software platform, an interface and functional support for providing application registration; an edge side, which is used to provide an environment for performing application deployment, upgrade and uninstall operations; an application center, which interacts with the software platform and the edge side, respectively, to execute the method described above. In particular, the application center, as a management and control center, is responsible for receiving and processing software registration requests including basic information, configuration menus and APIs, and calling the registration interface of the software platform to register applications; at the same time, according to the input application deployment instructions, non-containerized deployment operations are performed on the edge side or containerized deployment operations are performed using specified applications and corresponding images; in addition, the application center also responds to input application upgrade instructions and uninstall instructions, automatically or according to input APP disable instructions to disable the current application, and performs corresponding application upgrade or uninstall operations on the edge side for the selected deployment method.

[0169] Furthermore, an embodiment of the present invention also provides a computer-readable medium having computer-executable instructions stored thereon, and when the executable instructions are executed by a processor, the application lifecycle management method based on the application center as described above is implemented.

[0170] Specifically, such computer-readable media can be any form of physical storage media, such as hard disks, optical disks, flash drives, SD cards, etc., on which a series of carefully designed instruction sets are stored. These instruction sets are encoded and optimized and are specifically used to implement application deployment, upgrades, uninstallation, and related management operations in the application center environment.

[0171] When the processor reads and executes these instructions, it can accurately control the entire life cycle management of the application according to the predetermined logic and process. This includes but is not limited to the installation and configuration of the application, the monitoring and control of the running status, the update and upgrade of the version, and the final uninstallation and resource recycling.

[0172] In this way, the present invention not only provides an efficient and automated application management solution, but also enables this solution to be easily copied and promoted in different computer systems and environments in the form of computer-readable media, thereby greatly improving the convenience and consistency of application management.

[0173] In summary, the embodiments of the present invention provide a method, system, device and medium for full life cycle management of applications based on the application center. The method realizes full life cycle management of all applications through the application center platform, including operations such as deployment, startup, deactivation and uninstallation, and provides users with a unified and convenient management interface. At the same time, the present invention integrates multiple deployment methods such as network proxy, KBS deployment and third-party jump, supports containerized and non-containerized deployment, ensures the stable operation of applications in different environments, improves the flexibility and selectivity of applications, and ensures security and reliability.

[0174] In addition, the present invention also realizes the visual uploading of images to the image warehouse, simplifies the operation process, and quickly generates and deploys new images through custom construction, further improving deployment efficiency and user experience. These functions together constitute a comprehensive and efficient application life cycle management system.

[0175] To achieve the above functions, the present invention also provides a set of corresponding systems and devices, including key components such as application center servers and image repositories, as well as hardware devices that support these functions. At the same time, the present invention also provides a computer-readable medium on which computer executable instructions for implementing the above application lifecycle management method are stored, which facilitates the replication and promotion of the method.

[0176] In general, the embodiments of the present invention provide users with a comprehensive, flexible and efficient application life cycle management solution by integrating application management, image management and multiple deployment methods.

[0177] Since the system / device described in the above embodiments of the present invention is a system / device used to implement the method of the above embodiments of the present invention, a person skilled in the art can understand the specific structure and deformation of the system / device based on the method described in the above embodiments of the present invention, and thus will not be described in detail here. All systems / devices used in the method of the above embodiments of the present invention belong to the scope of protection of the present invention.

[0178] It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as methods, systems or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0179] The present invention is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products according to the embodiments of the present invention. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions.

[0180] It should be noted that in the scheme of the present invention, any figure mark between brackets should not be understood as limiting the scheme of the present invention. The word "comprising" does not exclude the existence of components or steps not listed in the scheme of the present invention. The word "one" or "an" preceding a component does not exclude the existence of multiple such components. The present invention can be implemented with the aid of hardware including several different components and with the aid of appropriately programmed computers. In the scheme of the present invention that lists several devices, several of these devices can be embodied by the same hardware. The use of the words first, second, third, etc. is only for convenience of expression and does not indicate any order. These words can be understood as part of the name of the component.

[0181] In addition, it should be noted that, in the description of this specification, the description of the terms "one embodiment", "some embodiments", "embodiment", "example", "specific example" or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, unless they are contradictory.

[0182] Although the preferred embodiments of the present invention have been described, those skilled in the art may make other changes and modifications to these embodiments after knowing the basic creative concept. Therefore, the present invention should be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the present invention.

[0183] Obviously, those skilled in the art can make various modifications and variations to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention belong to the scope of the present invention and its equivalent technology, the present invention should also include these modifications and variations.

Claims

1. A method for managing the entire life cycle of an application based on an application center, characterized in that: include: Receive and process input software registration requests containing basic information, configuration menus, and APIs, and call the registration interface of the software platform to register the application; Based on the input application deployment instructions including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository, a non-containerized deployment operation is performed on the edge side or a containerized deployment operation is performed using the specified application and the corresponding image; In response to the input application upgrade instruction, the current application is automatically disabled or disabled according to the input APP disable instruction, and the corresponding application upgrade operation is performed on the edge side according to the selected deployment mode, and after the application upgrade is completed, the disabled application is restarted; In response to the input application uninstallation instruction, the current application is disabled automatically or according to the input APP disablement instruction, and the corresponding application uninstallation operation is performed on the edge side.

2. The application life cycle management method based on the application center according to claim 1, characterized in that: Receive and process input software registration requests containing basic information, configuration menus, and APIs, and call the registration interface of the software platform to register the application, including: Provide an interface or screen to receive software registration requests input by users, including basic information, configuration menus, and APIs, and verify the received registration information; After the information is verified, the registration information is parsed, classified and stored; After processing the registration information, the registration interface of the software platform is called to package the processed registration information into a registration request data packet and pass it to the software platform after encryption or signature processing; Receive the registration result returned by the software platform, including the creation of application records and allocation of resources; If the registration is successful, the newly registered application will be added to the management list of the application center, and a success prompt message will be provided to the user; If registration fails, inform the user of the reason for the failure and provide corresponding solutions or suggestions.

3. The application life cycle management method based on the application center according to claim 1, characterized in that: After receiving and processing the input software registration request containing basic information, configuration menu and API, and calling the registration interface of the software platform to register the application, it also includes: After the application is successfully registered, the roles or users who are granted access to the registered application are determined based on preset rules or administrator input; Authorize registered applications to specific roles or users and configure corresponding permissions so that each authorized role or user can start, use and manage applications according to the configured permissions; Registered application icons or shortcuts are added to the desktop based on role or user preferences, default configuration, or administrator instructions.

4. The application life cycle management method based on the application center according to claim 1, characterized in that: Based on the input application deployment instructions including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository, before performing a non-containerized deployment operation on the edge side or performing a containerized deployment operation using the specified application and the corresponding image, the process further includes: Get the image file from at least one source in the development environment, test environment, or production environment; Parse the image file to obtain the image's layer structure, dependencies, size, and configuration files; With the help of specialized data visualization software, image processing libraries or custom-developed visualization components, the layer structure, dependency, size and configuration files of the image are visualized and converted to obtain a visualized image file; Upload the visualization image file to the image warehouse, and assign a unique identifier and version information to each visualization image file.

5. The application life cycle management method based on the application center according to claim 1, characterized in that: Based on the input application deployment instructions including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository, the non-containerized deployment operation is performed on the edge side or the containerized deployment operation is performed using the specified application and the corresponding image, including: Receive and parse input application deployment instructions including deployment mode and specified application; If the parsed instructions specify non-containerized deployment, directly install and configure the specified application in the edge environment; If the parsed instruction specifies containerized deployment, according to the parsed instruction, access the image repository where the application image is pre-stored, retrieve the image file corresponding to the specified application, and perform preparation work including decompression and verification of image integrity; If the image does not exist, an error message is fed back to the user and the operation is terminated; If the image exists, the pulled image is used to create and start a container on the edge side, and deployment operations including allocating necessary resources, configuring the network environment, and starting the application service in the container are performed; After deployment is complete, the application's running status is automatically verified to ensure that the application has been successfully deployed and meets the set running conditions; Feedback the results of the deployment to the user, including success or failure status, and related error messages.

6. The application lifecycle management method based on the application center according to any one of claims 1 to 5, characterized in that: In response to the input application upgrade instruction, automatically or according to the input APP disable instruction, deactivate the current application, and perform the corresponding application upgrade operation on the edge side according to the selected deployment mode, and restart the deactivated application after the application upgrade is completed, including: Receive and identify an input application upgrade instruction including a unique identifier of an application to be upgraded and upgraded configuration information; Before executing the application upgrade instruction, the currently running application is automatically disabled or the currently running application is disabled according to the input APP disable instruction; For the selected deployment mode, based on the unique identifier of the application to be upgraded and the upgraded configuration information, dynamically adjust the network routing rules on the edge side to ensure the correct direction of network traffic during and after the upgrade, replace the application package to update or repair the function, modify the YAML configuration file to define the behavior of the service, and modify the access URL to adjust the new service access point. One or more upgrade operations; After the application upgrade is completed, automatic verification of the upgrade results including checking the running status, functions and performance of the new application is performed. If at least one problem exists, the application is automatically rolled back to the previous version or an error message is provided to allow the administrator to intervene. After confirming that the app upgrade was successful, restart the disabled app.

7. The application lifecycle management method based on the application center according to any one of claims 1 to 5, characterized in that: In response to an input application uninstallation instruction, automatically or according to an input APP disablement instruction, deactivating the current application, and performing a corresponding application uninstallation operation on the edge side includes: Receive and identify an input application uninstallation instruction including a unique identifier of an application to be uninstalled; Before executing the app uninstallation command, automatically deactivate the currently running app or deactivate the currently running app according to the input APP disable command; According to the unique identifier of the application to be uninstalled, an application uninstallation operation including deleting application files, clearing application data, and releasing system resources occupied by the application is performed on the edge side; After the application is uninstalled, at least one of the following uninstallation results is automatically verified: confirming whether the application file has been deleted through the API or command of the file system, checking whether the registry or related configuration has been cleared, checking whether there are still services or processes related to the uninstalled application running, listing currently running services and processes through system commands or APIs to confirm whether the relevant items of the application have been uninstalled, confirming whether the shared files have been processed by checking the number of file links or the shared resource management mechanism set in the application center, and continuously monitoring data including checking system resource usage, abnormal restart or crash within a set time after the uninstallation is completed; If at least one problem exists, automatically revert to the previous application or provide an error message to allow administrator intervention; After confirming that the app was uninstalled successfully, restart the disabled app.

8. An application life cycle management system based on an application center, characterized in that: include: The application registration module is used to receive and process the input software registration request containing basic information, configuration menu and API, and call the registration interface of the software platform to register the application; An application deployment module, which is used to perform non-containerized deployment operations on the edge side or to perform containerized deployment operations using the specified application and the corresponding image based on the input application deployment instructions including the deployment mode and the specified application, and in combination with the image pre-stored in the image repository; An application upgrade module, which is used to respond to an input application upgrade instruction, automatically or according to an input APP disable instruction to disable the current application, and perform corresponding application upgrade operations on the edge side according to the selected deployment mode, and restart the disabled application after the application upgrade is completed; The application uninstallation module is used to respond to the input application uninstallation instruction, automatically or according to the input APP disabling instruction to disable the current application, and perform the corresponding application uninstallation operation on the edge side.

9. An application life cycle management device based on an application center, characterized in that: include: Software platform, used to provide application registration interface and functional support; The edge side is used to provide an environment for performing application deployment, upgrade, and uninstallation operations; The application center interacts with the software platform and the edge side respectively, and is used to execute the application life cycle management method based on the application center as described in any one of claims 1 to 7.

10. A computer-readable medium having computer-executable instructions stored thereon, characterized in that: When the executable instructions are executed by the processor, the application life cycle management method based on the application center as described in any one of claims 1 to 7 is implemented.

Citation Information

Cited By

  • Domestic intelligent application management platform and method based on security control

    CN119718356A