Management method, program product, device and medium of template file package manager
By allocating multiple target warehouses for multiple users, and uploading template files to the corresponding target warehouse, the problem of uploading time for multiple users at the same time uploading template files at the same time, improving the upload efficiency and management efficiency.
Patent Information
- Application Number
- CN202411367359.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-29
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2044-09-29
AI Technical Summary
In a cluster of high-availability AI inference platform, when multiple users upload template file packages at the same time, the task upload time is longer because the multi-user task is assigned to the same harbor, and other harbors as backup nodes do not participate in the upload task.
By obtaining the template file packages uploaded by multiple users, and determining multiple target warehouses from the cluster based on the total number of users, the user's template file packages are uploaded to the corresponding target warehouse. Each target warehouse corresponds to one or more users. .
Improve the efficiency of template file upload and shorten the task upload time, which is conducive to the efficient management of the template file package manager on the template file package.
Smart Images

Figure CN118984317B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a management method of a template file package manager, a computer program product, an electronic device and a computer-readable storage medium. Background Art
[0002] The AI (Artificial Intelligence) reasoning platform is a platform for deploying AI images or models to actual application scenarios for real-time reasoning. The AI reasoning platform can create services in specified scenarios using helm charts (that is, using the official package management tool of kubernetes applications to create a package format of a collection of files in a specific directory), so that the service can provide fast and accurate reasoning.
[0003] In a high-availability AI inference platform cluster, there are at least two harbors in the cluster. Before creating a service in a specified scenario, a template file package needs to be uploaded. In related technologies, when multiple users submit upload tasks for multiple template file packages at the same time, multi-user tasks are assigned to the same harbor. Other harbors, as standby nodes, do not participate in the upload tasks, resulting in a longer task upload time.
[0004] It can be seen that how to shorten the upload time of the template file task and improve the upload efficiency is a problem that technical personnel in this field need to solve. Summary of the invention
[0005] The purpose of the embodiments of the present invention is to provide a management method, computer program product, electronic device and computer-readable storage medium for a template file package manager, which can improve the efficiency of template file upload, shorten the task upload time, and facilitate the efficient management of template file packages by the template file package manager.
[0006] In order to solve the above technical problems, an embodiment of the present invention provides a management method of a template file package manager, including:
[0007] Get template file packages uploaded by multiple users;
[0008] Determine multiple target warehouses from all warehouses in the cluster for storing template file packages according to the total number of users of each of the users;
[0009] The template file packages of the plurality of users are uploaded to the plurality of target warehouses; wherein each of the target warehouses corresponds to one or more users.
[0010] In some embodiments, the determining of multiple target warehouses from all warehouses in the cluster for storing template file packages according to the total number of users of each of the users includes:
[0011] When the total number of users is not greater than the total number of warehouses of all warehouses in the cluster for storing template file packages, M warehouses are selected from all the warehouses as target warehouses, where M is the total number of users and M is an integer not less than 2;
[0012] When the total number of users is greater than the total number of warehouses, all the warehouses in the cluster are used as target warehouses.
[0013] In some embodiments, uploading the template file packages of the plurality of users to the plurality of target warehouses includes:
[0014] When the total number of users is not greater than the total number of warehouses of all warehouses in the cluster for storing template file packages, a target warehouse is allocated to each of the users;
[0015] For each of the users, uploading the template file package of the user to the corresponding target warehouse;
[0016] In the case where the total number of users is greater than the total number of warehouses, the target warehouse corresponding to each user is determined according to the file size of the template file package uploaded by each user;
[0017] For each user corresponding to each target warehouse, the template file package of the user is uploaded to the corresponding target warehouse.
[0018] In some embodiments, determining the target warehouse corresponding to each user according to the file size of the template file package uploaded by each user includes:
[0019] Sort the users according to the file size of the template file package uploaded by each user;
[0020] Each time, the user with the largest file size is selected from the currently unassigned users and assigned to a target warehouse with the smallest total task size of the currently assigned users among the target warehouses, until a user is assigned to each target warehouse;
[0021] The user with the largest file size is selected from the currently unassigned users and assigned to a target warehouse with the least number of currently assigned users among the target warehouses until all users are assigned.
[0022] In some embodiments, uploading the user's template file package to the corresponding target warehouse includes:
[0023] Perform legality verification based on template file upload request;
[0024] If the verification is successful, each received fragment file corresponding to the template file package uploaded by the user is stored in the specified directory of the business container, and the fragment information of each fragment file is recorded;
[0025] Determine a fragmentation order according to the fragmentation information of each fragmentation file, and write each fragmentation file into the same file according to the fragmentation order;
[0026] The written file is decompressed to obtain a decompressed file, and the decompressed file is uploaded to the target warehouse corresponding to the user.
[0027] In some embodiments, it also includes:
[0028] Create corresponding applications according to the user's application creation instructions;
[0029] Obtain template information of the template file uploaded by the user, and determine whether the uploaded template information exists under the application;
[0030] If there is no uploaded template information in the application, uploading the template information uploaded by the user to the application;
[0031] In the case that there is uploaded template information under the application, if the template name in the template information uploaded by the user is the same as the template name in the uploaded template information under the application, and the template version in the template information is different from the template version in the uploaded template information, the template information uploaded by the user is uploaded to the application.
[0032] In some embodiments, it also includes:
[0033] Determine the target template file according to the received template file viewing instruction;
[0034] Displaying the hierarchical structure and file content of the target template file in the first display area;
[0035] The target template file is converted into a preset original format, and the converted target template file is displayed in the second display area, wherein the preset original format is used to represent a data serialization format.
[0036] In some embodiments, it also includes:
[0037] Determine the application to be transferred and the target user according to the application ownership transfer instruction input by the user;
[0038] It is determined whether the target user is in the same user group as the user; if so, the ownership of the application to be transferred is transferred to the target user.
[0039] In some embodiments, it also includes:
[0040] Determine the application to be shared and the sharing object according to the application ownership sharing instruction input by the user;
[0041] In a case where the sharing object is a user group to which the user belongs, sharing the application to be shared with each user in the user group to which the user belongs;
[0042] When the sharing object is the cluster where the user is located, the application to be shared is shared to all users in the cluster.
[0043] In some embodiments, it also includes:
[0044] Obtaining a template deployment request sent by a user, wherein the template deployment request includes template information, a scenario name, and a service name;
[0045] Performing legitimacy verification on the user and the template deployment request;
[0046] If the verification is passed, determining whether the template deployment request is an internal call according to the header data of the template deployment request;
[0047] If it is an internal call, the estimated size of the usage scenario resources is determined according to the template deployment request;
[0048] Determine a target scene according to the scene name, and judge whether the scene remaining resources of the target scene meet the estimated size of the used scene resources;
[0049] If the estimated size of the usage scenario resources is met, a target template file package is obtained from the corresponding target warehouse according to the template information, and a template file package manager is used to deploy the corresponding service on the server according to the target template file package;
[0050] If it is not an internal call, determine whether to start the template file package manager deployment approval process;
[0051] If the template file package manager deployment approval process is started, and the corresponding template deployment is performed through the template file package manager deployment approval process;
[0052] If the template file package manager deployment approval process is not started, the process returns to the step of determining the estimated size of the usage scenario resources according to the template deployment request.
[0053] In some embodiments, it also includes:
[0054] Get the status of each deployed service;
[0055] The status of each of the services is displayed separately.
[0056] In some embodiments, obtaining the status corresponding to each deployed service includes:
[0057] For each deployed service, obtain the scenario, service name, and template file package manager name corresponding to the service;
[0058] Acquire each sub-service under the service according to the scenario, the service name and the template file package manager name;
[0059] Acquire, according to each sub-server, a container group corresponding to each of the sub-services;
[0060] When the status of each container in each of the container groups is not waiting or terminating, determining that the status of the service is running;
[0061] In a case where the status of at least one container in each of the containers in each of the container groups is waiting or terminated, it is determined that the status of the service is failed.
[0062] Another aspect of an embodiment of the present invention provides a computer program product, including a computer program / instruction, which implements the steps of the management method of the template file package manager described above when executed by a processor.
[0063] Another aspect of the present invention provides an electronic device, including:
[0064] Memory for storing computer programs;
[0065] A processor is used to execute the computer program to implement the steps of the management method of the template file package manager as described above.
[0066] Another aspect of an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the management method of the template file package manager as described above are implemented.
[0067] It can be seen from the above technical solution that the beneficial effects of the present invention are:
[0068] An embodiment of the present invention provides a management method for a template file package manager, including: obtaining template file packages uploaded by multiple users; determining multiple target warehouses from all warehouses in a cluster for storing template file packages according to the total number of users of each user; uploading the template file packages of multiple users to the multiple target warehouses; wherein each target warehouse corresponds to one or more users.
[0069] It can be seen that in the embodiment of the present invention, when multiple users upload template file packages at the same time, multiple target warehouses can be determined from the various warehouses used to store template file packages in the cluster according to the total number of users who currently upload the template file packages, and then each user is assigned a target warehouse, and the template file packages uploaded by multiple users are stored in the corresponding target warehouses respectively, wherein each target warehouse corresponds to at least one user, so that the template file packages of multiple users can be uploaded to multiple target warehouses, thereby improving the efficiency of template file upload, shortening the task upload time, and facilitating the efficient management of template file packages by the template file package manager.
[0070] In addition, the present invention also provides a corresponding computer program product, an electronic device and a computer-readable storage medium for the management method of the template file package manager, which further makes the method more practical, and the device, electronic device and computer-readable storage medium have corresponding advantages. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] In order to more clearly illustrate the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0072] Figure 1 A schematic diagram of a flow chart of a management method of a template file package manager provided by an embodiment of the present invention;
[0073] Figure 2 A schematic flow chart of another management method of a template file package manager provided by an embodiment of the present invention;
[0074] Figure 3 A schematic diagram of a process of uploading a template file package provided by an embodiment of the present invention;
[0075] Figure 4 A helm management architecture diagram provided for an embodiment of the present invention;
[0076] Figure 5 A schematic diagram of a template deployment request generation process provided by an embodiment of the present invention;
[0077] Figure 6 A schematic diagram of a template deployment process provided by an embodiment of the present invention;
[0078] Figure 7 A schematic diagram of an approval process provided by an embodiment of the present invention;
[0079] Figure 8 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention;
[0080] Fig. 9 A schematic diagram of the structure of a computer-readable storage medium provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0081] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0082] The terms "including" and "having" in the specification of the present invention and the above-mentioned drawings, as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device including a series of steps or units is not limited to the listed steps or units, but may include steps or units that are not listed.
[0083] In order to enable those skilled in the art to better understand the scheme of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.
[0084] The AI reasoning platform can use helm chart to create services in specified scenarios using artificial intelligence images or models, enabling services to provide fast and accurate reasoning. Among them, helm, as a template file package manager, is a template file package management tool for kubernetes (an open source system for automatically deploying, scaling, and managing containerized applications) applications, allowing users to easily create, install, and upgrade kubernetes applications. helm is a command-line tool that helps manage and collaborate on applications on kubernetes. helm simplifies the deployment of kubernetes applications by packaging different parts of an application (such as services, configmaps, secrets, etc.) into a single, easy-to-install template file package (called a chart). In other words, a chart is a collection of files that describes a set of related kubernetes resources, and a single chart can be used to deploy simple applications (such as nginx pods) or complex applications.
[0085] The helm application management in the AI reasoning platform is to create services more conveniently and quickly. Effective helm management allows users to operate helm chart files reasonably and easily, create helm service instances more reasonably and perceive the status of service instances in real time. Reasonable helm management can reduce the time cost and operation cost brought by data management.
[0086] When multiple users upload multiple template files and image files at the same time, for large template files and large image files, the relevant technology can only store the files in a designated warehouse (harbor), resulting in a long upload time. In order to shorten the overall upload time, it is necessary to shorten the time to store all templates and images in the harbor. In a high-availability AI inference platform cluster, there are at least two harbors in the cluster, and multiple harbors automatically synchronize data with each other to maintain data consistency. In the current helm management, when multiple users submit upload tasks for multiple template file packages at the same time, multi-user tasks are assigned to the same harbor, and other harbors do not participate in the upload tasks as backup nodes, resulting in a long task upload time. In other words, the high-availability harbor cluster in the related art has a virtual harbor ip (Internet Protocol) to the outside, and the virtual harbor ip floats on a certain harbor. For example, taking N warehouses in a high-availability environment as an example, when a user submits multiple template files and image file upload tasks, the template files or image files are uploaded to the harbor where the virtual harbor ip floats, and the other N-1 harbors where the virtual harbor ip does not float are used as standby nodes and do not participate in the upload task, which will cause the task time to be longer. In view of this, an embodiment of the present invention provides a management method for a template file package manager applied to an AI reasoning platform with a kubernetes cluster environment, wherein a helm command installation package is installed in the AI reasoning platform, and a warehouse (harbor) component for storing a template file package helm chart is installed in the cluster. When multiple users upload multiple template files and image files at the same time, multiple target warehouses can be determined from the cluster, and corresponding target warehouses are allocated to each user, so that the template files and image files uploaded by the user are uploaded to the corresponding target warehouse, so as to improve the task upload efficiency and improve the helm management efficiency. When building a business image, use helm.tar as the base image to ensure that the helm command is also installed in the container created by the business image.
[0087] Next, a management method of a template file package manager provided by an embodiment of the present invention is introduced in detail. Figure 1 A schematic diagram of a management method of a template file package manager provided by an embodiment of the present invention, the method comprising:
[0088] S110: Acquire template file packages uploaded by multiple users;
[0089] It should be noted that, in the case where multiple users upload multiple template file packages at the same time, the template file packages uploaded by multiple users are obtained, wherein the template file package may include template files and image files. Specifically, whether it only includes template files or includes template files and image files is determined according to the files actually selected by the user, and the embodiment of the present invention does not specifically limit this. In addition, the template file in the embodiment of the present invention refers to the helm chart template file.
[0090] S120: determining multiple target warehouses from all warehouses in the cluster for storing template file packages according to the total number of users of each user;
[0091] It is understandable that when multiple template file packages uploaded by multiple users are obtained at the same time, in order to improve the upload efficiency of the upload task, all warehouses for storing template file packages can be determined from the cluster, and multiple target warehouses can be determined from all the warehouses.
[0092] S130: Uploading template file packages of multiple users to multiple target warehouses; wherein each target warehouse corresponds to one or more users.
[0093] After determining multiple target warehouses, a target warehouse can be assigned to each user, so that each target warehouse is assigned at least one user, so that multiple users can be assigned to multiple target warehouses, and then the template file package uploaded by the user is uploaded to the target warehouse corresponding to the user. By dispersing multiple users to multiple target warehouses, the upload efficiency of the template file package upload task can be improved, which is conducive to improving the management efficiency of the template file package manager for the template file package.
[0094] Please refer to Figure 2 , the technical solution of the present invention is further described and introduced as follows:
[0095] S200: Acquire template file packages uploaded by multiple users;
[0096] The relevant introduction of step S200 in the embodiment of the present invention can refer to the relevant content of S110 in the above embodiment, and the embodiment of the present invention will not be repeated here.
[0097] S210: determining a total number of users of the plurality of users, and comparing the total number of users with a total number of warehouses of all warehouses in the cluster for storing template file packages;
[0098] It is understandable that the total number of users can be determined based on the users who upload the template file package at the same time, and the total number of warehouses of all harbor warehouses in the cluster for storing template file packages can be obtained. For example, the total number of users is M, and the total number of warehouses is N, where M and N are both positive integers not less than 2.
[0099] S220: When the total number of users is not greater than the total number of warehouses of all warehouses in the cluster for storing template file packages, select M warehouses from all warehouses as target warehouses, where M is the total number of users and M is an integer not less than 2;
[0100] In actual applications, if the total number of users M is less than or equal to the total number of warehouses N in the cluster for storing template file packages (that is, M≤N), M warehouses can be selected from the N warehouses as target warehouses, thereby obtaining M target warehouses. If N is greater than M, M warehouses can be arbitrarily selected from the N warehouses as target warehouses. If N is equal to M, all N warehouses can be used as target warehouses.
[0101] S230: Allocate a target warehouse to each user;
[0102] After determining M target warehouses from N warehouses, a target warehouse can be assigned to each of the M users, so that one user corresponds to one target warehouse. In practical applications, the real physical harbor IP of the target warehouse can be obtained, and a corresponding relationship is established between the real physical harbor IP and the user information of the assigned user.
[0103] S240: For each user, upload the user's template file package to the corresponding target warehouse;
[0104] It is understandable that after each user is assigned a corresponding target warehouse, for each user, the template file package uploaded by the user can be uploaded to the target warehouse corresponding to the user for storage, so that M target warehouses can all perform the upload task.
[0105] S250: When the total number of users is greater than the total number of warehouses, all warehouses in the cluster are used as target warehouses;
[0106] If the total number of users M is greater than the total number of warehouses N (that is, N<M), all N warehouses in the cluster can be used as target warehouses.
[0107] S260: Determine the target warehouse corresponding to each user according to the file size of the template file package uploaded by each user;
[0108] It should be noted that in order to further shorten the overall average upload time, each user can be assigned to the corresponding target warehouse according to the file size of the template file package uploaded by each user, so that the total file size that each target warehouse needs to process is smaller, so that the upload time of tasks uploaded to different target warehouses is smaller.
[0109] S270: For each user corresponding to each target warehouse, upload the user's template file package to the corresponding target warehouse.
[0110] It is understandable that after each user is assigned a corresponding target warehouse, for each user, the template file package uploaded by the user can be uploaded to the target warehouse corresponding to the user for storage, so that N target warehouses can all perform the upload task.
[0111] In some embodiments, the process of determining the target warehouse corresponding to each user according to the file size of the template file package uploaded by each user in S260 may include:
[0112] Sort each user according to the file size of the template file package uploaded by each user;
[0113] Each time, the user with the largest file size is selected from the currently unassigned users and assigned to the target warehouse with the smallest total task size of the currently assigned users in each target warehouse, until there is a user assigned to each target warehouse;
[0114] Select the user with the largest file size from the currently unassigned users and assign it to the target warehouse with the least number of currently assigned users among the target warehouses until all users are assigned.
[0115] It should be noted that in actual applications, the file size of the template file package uploaded by each user can be determined, and then each user can be sorted from large to small according to the file size. The total task size of the currently assigned users of each target warehouse can also be obtained, and each target warehouse can be sorted from small to large according to the total task size of the currently assigned users. The first N users out of M users are placed in the sorted N target warehouses in turn, so that the user with the largest file size can be placed in a target warehouse with the smallest total task size, and the user with the second largest file size can be placed in a target warehouse with the second smallest total task size. In this way, the first round of allocation is completed, and one user is allocated to each target warehouse.
[0116] After completing the first round of allocation, the subsequent allocation process is entered. As can be seen from the above, the N+1th user to the Mth user among the sorted M users have not been allocated, and the number of users allocated to each target warehouse can be obtained. At this time, the user with the largest file size among the unallocated users is allocated to the target warehouse with the smallest number of currently allocated users among the target warehouses, and then the current number of allocated users and the total task size of the currently allocated users of the target warehouse are updated. Then, the user with the largest file size among the remaining currently unallocated users is allocated to the target warehouse with the smallest number of currently allocated users among the target warehouses, and the current number of allocated users and the total task size of the currently allocated users of the target warehouse are updated. This process is repeated in sequence until all users are allocated, so that each user is allocated to each target warehouse, and the target warehouse corresponding to each user is determined. After the allocation is completed, each target warehouse corresponds to a group of users, that is, one target warehouse corresponds to one user group. For each target warehouse, the template file package of each user in the user group corresponding to the target warehouse is uploaded to the target warehouse.
[0117] In one embodiment, the method may further divide the M users into N groups and assign a target warehouse to each group when it is determined that the total number of users is greater than the total number of warehouses;
[0118] For each user in the group, upload the user's template file package to the corresponding target warehouse.
[0119] In one implementation, the process of dividing the M users into N user groups may include:
[0120] When the modulus of M over N is not zero, the ratio of M to N is rounded down and then added with 1 to obtain a first value;
[0121] Divide M users into N groups, where the number of users in each group is the first value or the first value minus 1;
[0122] When the modulus of M over N is zero, the ratio of M to N is rounded down to obtain a second value;
[0123] The M users are divided into N groups, and the number of users in each group is the second value.
[0124] It is understandable that, when N<M, if M%N (i.e., M modulo N) is not equal to 0, then b=[M / N]+1 can be used; if M%N is zero, then b=[M / N], where [M / N] represents the ratio of M to N rounded down. In the process of dividing M users into N groups, the number of users in each group can be set to b or b-1 to ensure that the total size difference of all user files in each group is minimized, thereby allocating multi-user tasks to N harbors to improve the overall task upload efficiency.
[0125] In some embodiments, the process of uploading the user's template file package to the corresponding target warehouse in S240 and S270 may include:
[0126] Perform legality verification based on template file upload request;
[0127] If the verification is successful, the received fragment files corresponding to the template file package uploaded by the user are stored in the specified directory of the business container, and the fragment information of each fragment file is recorded;
[0128] Determine the fragmentation order according to the fragmentation information of each fragment file, and write each fragment file into the same file according to the fragmentation order;
[0129] Decompress the written file to obtain a decompressed file, and upload the decompressed file to the target warehouse corresponding to the user.
[0130] It should be noted that if Figure 3As shown, after the front end obtains the template file package (specifically the helmchart template file compression package) selected by the user to upload, the template file package is allocated and uploaded to the back end. The front end sends the template file upload request to the back end. The back end performs a legality verification based on the template file upload request, and can verify the legality of the user and the legality of the helm data. If the legality verification fails, the operation is terminated. If the legality verification passes, each shard file corresponding to the template file package uploaded by the user is obtained, and each shard file is saved in the specified directory of the business container, and the relevant information of the block file is recorded, that is, the shard information of each shard file is recorded. According to each shard information, the order of each shard file can be determined, and then all the received shard files are written to the same file in the business container according to the shard order. In order to reduce the storage space occupied, after all the shard files are written to the same file, all the shard files in the specified directory in the business container can be deleted. Then, the complete file after writing is decompressed to obtain the decompressed file, and then the decompressed file is uploaded to harbor to realize the upload of the template file package to the warehouse. In actual applications, you can also retain the complete decompressed files in the business container, thereby further ensuring the security and stability of the files through dual storage. Finally, you can also store the relevant information of the helm chart template file package in the database.
[0131] In addition, in the embodiment of the present invention, asynchronous operation is used to complete the upload of the template file package. The front end can cyclically query the progress of the file upload to determine whether the file upload is completed. For the upload of a larger template file, the file upload status can be better understood. In the embodiment of the present invention, a piecewise upload method is used. There may be network fluctuations during the upload process. The gateway sets a multiple retransmission mechanism. The piecewise upload can ensure the integrity of the file and the stability of the system.
[0132] It should be noted that if Figure 4The helm (template file package manager) management architecture diagram shown in the figure shows that in the helm (template file package manager) management process, users can create helm applications, upload template information and image information of multiple helm chart templates in the application, and the helm application can be shared to the user group or globally, and users with personal permissions for the helm application can transfer the ownership of the application to other users in the same user group. Multiple different versions of helm charts can be uploaded to one application to achieve version management; users can add, delete, modify and query template files; they can also deploy services based on the content of helm template files; template files can be downloaded from the browser to the local computer; and they can also delete a certain helm chart template information under the application. The above embodiment introduces the uploading of template file packages in detail. The following will introduce the uploading of multiple versions of template information in the application, the sharing of applications and the transfer of ownership, the addition, deletion, modification and query of template files, and service deployment in detail:
[0133] In some embodiments, the method may further include:
[0134] Create corresponding applications according to the user's application creation instructions;
[0135] Get the template information of the template file uploaded by the user, and determine whether the uploaded template information exists in the application;
[0136] If there is no uploaded template information in the application, upload the template information uploaded by the user to the application;
[0137] If there is template information uploaded under the application, if the template name in the template information uploaded by the user is the same as the template name in the template information uploaded under the application, and the template version in the template information is different from the template version in the uploaded template information, the template information uploaded by the user is uploaded to the application.
[0138] It should be noted that the AI reasoning platform has multiple user groups, each of which has a user group administrator and multiple ordinary users. A user can create an application, and can upload multiple different versions of helmchart template information and multiple images required in the chart template under one application.
[0139] In actual applications, the corresponding application can be created according to the application creation instruction input by the user. After the application is created, multiple different versions of the same-name helm chart information and multiple image information required to be used in the chart template can be uploaded under the application. The user can select the template file and image file to be uploaded, and the template information of the template file uploaded by the user can be obtained. Further, it is determined whether the helm chart template information exists in the application. If the helm chart template information does not exist in the application, the obtained template information can be uploaded to the application. When the template information of multiple helmchart template files is obtained, the template information of any helm chart template file can be uploaded. If the application has template information of at least one helm chart template, it is necessary to determine whether the template information of the obtained template file is consistent with the template name of the template information transmitted in the application, and whether the template version is different. Only when the template name of the template information is consistent with the template name of the transmitted template information, and the template version in the template information is different from the template version in the transmitted template information, the template information of the obtained template file is uploaded to the application, which ensures that multiple different versions of the same-name helm chart templates can be uploaded under one application. In other words, the template information of the helm chart template file to be uploaded needs to satisfy the name field value in Chart.yaml and the name field value in Chart.yaml of the uploaded template information, and the version field value in Chart.yaml is different from the version field value in Chart.yaml of the uploaded template, so as to ensure that multiple different versions of the same helm chart template can be uploaded under one application. Among them, yaml is spelled as YAML Ain't a Markup Language, which represents a human-readable data serialization language. The business yaml is configured with hostpath (mounting an actual directory in the Node host to the Pod for container use. This design can ensure that the Pod is destroyed, but the data can exist on the Node host) pv (PageView, page views) to ensure that the helm chart file will not be lost after the service is restarted.
[0140] In some embodiments, the method may further include:
[0141] Determine the target template file according to the received template file viewing instruction;
[0142] Displaying the hierarchical structure and file content of the target template file in the first display area;
[0143] The target template file is converted into a preset original format, and the converted target template file is displayed in the second display area, where the preset original format is used to represent the data serialization format.
[0144] It should be noted that the AI reasoning platform visualizes the helm chart template file in the application, and the user can input the template file viewing instruction through the display interface. The system determines the target template file to be viewed according to the template file viewing instruction input by the user, and then displays the hierarchical structure and file content of the target template file in the first display area. In the embodiment of the present invention, in order to further facilitate the user to view the position where the variables in the template file are used, the target template file can also be converted into a preset original format, wherein the preset original format can be the format of the kubernetes general yaml, and then the converted target template file is displayed in the second display area, so that the user can compare the contents displayed in the two areas, clearly understand the position where the variables in the values.yaml of the template file are used, increase the readability of the template file, and better meet the downstream requirements for direct changes to the variables.
[0145] In one embodiment, the method may further include:
[0146] Receive template deletion instructions;
[0147] Determine the template information to be deleted according to the template deletion instruction;
[0148] When the current user information of the template corresponding to the template information to be deleted is empty, the template information to be deleted is deleted.
[0149] It should be noted that in actual applications, users can delete template information in the application. After receiving a template deletion instruction, the template information to be deleted is determined according to the template deletion instruction, and further check whether the current user information of the template corresponding to the template information to be deleted is empty. If the current user information is not empty, it means that the corresponding service is being used by the user, and the template information cannot be deleted at this time. If the current user information is empty, it means that no user is using the corresponding service, and the template information to be deleted can be deleted at this time.
[0150] Of course, in actual applications, users can also perform file operations such as uploading files or folders, creating files or folders, deleting files or folders, renaming files or folders, and modifying file contents on the helm chart template files in the application.
[0151] In some embodiments, the method may further include:
[0152] Determine the application to be transferred and the target user according to the application ownership transfer instruction input by the user;
[0153] Determine whether the target user is in the same user group as the user. If so, transfer the ownership of the application to be transferred to the target user.
[0154] It should be noted that when a user needs to transfer the ownership of an application, he can input an application ownership transfer instruction. According to the application ownership transfer instruction, the application to be transferred and the target user to be transferred can be determined. When the target user and the user are in the same user group, the ownership of the application to be transferred can be transferred to the target user. In other words, the user can transfer the template under this application to other users in the same user group, that is, all helmchart templates and images under the application are transferred to other users in the same user group. In some embodiments, the method may also include:
[0155] Determine the application to be shared and the sharing object according to the application ownership sharing instruction input by the user;
[0156] When the sharing object is the user group to which the user belongs, the application to be shared is shared to each user in the user group to which the user belongs;
[0157] When the shared object is the cluster where the user is located, the application to be shared will be shared to all users in the cluster.
[0158] It should be noted that when a user needs to perform an application sharing operation, he or she can input an application ownership sharing instruction and determine the application to be shared and the sharing object based on the application ownership sharing instruction. When the sharing object is the user group to which the user belongs, the application to be shared will be shared with each user in the user group to which the user belongs; when the sharing object is the cluster to which the user belongs, the application to be shared will be shared with all users under the cluster.
[0159] In other words, in the embodiment of the present invention, the application can be shared to the user group or cluster for use by all members of the same user group or all members of all user groups in the cluster, that is, all helm chart templates and images under the application are shared to the user group or cluster for use by all members of the same user group or all members of all user groups. The application sharing permission can be for individuals, user groups or clusters. Individuals are visible only to the current user, user groups are visible to all users under the current user's user group, and clusters are visible to all users in the cluster.
[0160] Of course, the application ownership transfer operation can only be performed when the application sharing object is an individual. The two operations of application ownership transfer and sharing in the embodiment of the present invention ensure the flexibility and security of all helm chart templates and images under the application, and can be used multiple times by multiple users without the need to upload the same helm chart template and image multiple times, which greatly saves storage space.
[0161] In some embodiments, the method may further include:
[0162] Obtain the template deployment request sent by the user, which includes template information, scenario name, and service name;
[0163] Verify the legitimacy of user and template deployment requests;
[0164] If the verification is successful, determine whether the template deployment request is an internal call based on the header data of the template deployment request;
[0165] If it is an internal call, the estimated size of the scenario resources is determined based on the template deployment request;
[0166] Determine the target scene according to the scene name, and judge whether the remaining resources of the target scene meet the estimated size of the scene resources;
[0167] If the estimated size of the scenario resources is met, the target template file package is obtained from the corresponding target warehouse according to the template information, and the template file package manager is used to deploy the corresponding service to the server according to the target template file package;
[0168] If it is not an internal call, determine whether to start the template file package manager deployment approval process;
[0169] If you start the template file package manager deployment approval process, and use the template file package manager deployment approval process to deploy the corresponding template;
[0170] If the template file package manager deployment approval process is not started, the process returns to the step of determining the estimated size of the usage scenario resources according to the template deployment request.
[0171] It should be noted that if Figure 5 As shown, ordinary users can deploy helm chart templates. Users can choose to develop a specific version of the application template, fill in the scenario name, service name information, the front end can generate a template deployment request based on the specified version of the specified application selected by the user, the scenario name, and service name information filled in by the user, and submit the template deployment request to the back end.
[0172] like Figure 6As shown, after the backend receives the helm deployment request (that is, the template deployment request), it first verifies the legitimacy of the helm data related to the user and template deployment request. If the legitimacy is passed, it proceeds to the next step (that is, judging whether the template deployment request is an internal call based on the header data of the template deployment request). If the legitimacy verification fails, an error message is returned and the process ends. In the process of judging whether the template deployment request is an internal call based on the header data of the template deployment request, it can be judged whether the template deployment request is an internal call based on the preset specified parameters in the header. If the preset specified parameters exist, it means that it is an internal call. If the preset specified parameters do not exist, it means that it is not an internal call. If it is not an internal call, the backend needs to determine whether to enable the helm deployment approval function. If the helm deployment approval is enabled, the data information is submitted to the approval module to execute the approval process (such as Figure 7 As shown), the process ends. If the template deployment request is an internal call or the helm deployment approval is not enabled, the backend parses values.yaml to obtain the estimated usage scenario resource size, and determines whether the remaining resources of the corresponding scenario meet the resource usage of the helm service (that is, the estimated usage scenario resource size), that is, whether the remaining resources of the scenario are not less than the estimated usage scenario resource size. If the remaining resources of the scenario are less than the resource usage of the helm service, a reasonable error is given and the process ends. If the remaining resources of the scenario meet the resource usage of the helm service, the backend obtains the target template file package from the corresponding target warehouse according to the template information, and uses the template file package manager to deploy the corresponding service to the server according to the target template file package. In other words, the service can be deployed to the server through the helm install command. After the deployment is completed, the database helm-related data (including the user using the template, the name of the helm instance service, the scenario, resources, and other information) can also be updated.
[0173] In addition, if Figure 7 As shown, the user group administrator enters the approval module to check the legality of the helm deployment data. If it is illegal, the approval will not be passed and the process ends; if it is legal, the approval module backend will call the helm deployment interface to create the helm service to the server. After the service is successfully created, ordinary users can see the created helm service. In the embodiment of the present invention, the approval function of the group administrator can further ensure the security and rationality of the user's creation of the helm service, and multi-role confirmation guarantees the success rate of the helm service creation.
[0174] In some embodiments, the method may further include:
[0175] Get the status of each deployed service;
[0176] Display the status of each service separately.
[0177] It should also be noted that in order to further enable users to clearly understand whether the deployed services are running normally, the backend can asynchronously obtain the real-time status, resource usage and other information of each deployed helm service and persist it. The front end can poll the helm service status interface to display the status of each service so that users can obtain the status of the service after helm deployment in real time. The status can include running, starting, and failure. If the status is failure, the reason for failure can also be given. The resource configuration of the service including cpu, memory, accelerator card, etc. can also be displayed, and the log of the service pod container can be queried, which greatly makes up for the shortcoming of poor perception of service status after deployment. In addition, the acquired real-time status of the helm service and other information can be persisted to the database.
[0178] In some embodiments, the process of obtaining the status corresponding to each deployed service may include:
[0179] For each deployed service, obtain the scenario, service name, and template file package manager name corresponding to the service;
[0180] Get each sub-service under the service according to the scenario, service name and template file package manager name;
[0181] According to each sub-server, obtain the container group corresponding to each sub-service;
[0182] When the status of each container in each container group is not waiting or terminated, determine that the status of the service is running;
[0183] In the case where the status of at least one container in each container in each container group is waiting or terminated, it is determined that the status of the service is failed.
[0184] It should be noted that in actual applications, a connection to the server k8s client can be established based on the server information, and the scenario, service name and template file package manager name corresponding to the service can be obtained; the service list can be obtained based on the scenario and helm service name and helm name, wherein the service list includes multiple sub-services, and then the container group pod corresponding to each sub-service is obtained according to each sub-service in the service list, and the status of all containers under each container group pod is queried. If the status of all containers under each pod is not waiting or terminated, the status of the service is running, and the helm service status in the database is updated to running. Otherwise, the status of the service is determined to be failed, and the database helm service status is updated to a failed state. In actual applications, the status of each service can be queried cyclically up to a specified number of times. In one embodiment, the method may also include:
[0185] Get the service data corresponding to all service instances on the server;
[0186] Compare the service data corresponding to all service instances on the server with all service data stored in the database, and determine the target service data missing from the server from the database;
[0187] Create a corresponding service instance on the server according to the target service data.
[0188] It can be understood that the embodiment of the present invention also provides a helm service instance fault recovery function. When the helm service instance is deleted by mistake on the server, since there is still relevant information of the helm service instance in the database and the user's helm chart template file is still in the shared storage, the backend can restore the helm service instance according to the relevant information of the helm service instance in the database and the user's helm chart template file is still in the shared storage.
[0189] That is, you can get the service data corresponding to all service instances on the server, and then compare the service data corresponding to all service instances on the server with all service data stored in the database to see whether the helm service data in the database exists on the server, determine the missing target service data on the server from the database, and use the helm install command to create the corresponding helm service instance on the server according to the target service data in the database.
[0190] On the basis of the above-mentioned embodiment, another aspect of the embodiment of the present invention provides a computer program product, including a computer program / instruction, which implements the steps of the management method of the template file package manager described above when executed by a processor.
[0191] It should be noted that the computer program product provided in the embodiment of the present invention has the same beneficial effects as the above-mentioned embodiment, and for the specific introduction of the management method of the template file package manager involved in the embodiment of the present invention, please refer to the above-mentioned embodiment, and the present invention will not be repeated here.
[0192] Based on the above embodiments, the present invention further provides an electronic device, which is described from a hardware perspective. Figure 8 A structural diagram of an electronic device provided by an embodiment of the present invention, such as Figure 8 As shown, the electronic equipment includes:
[0193] A memory 20, used for storing computer programs;
[0194] The processor 21 is used to implement the steps of the management method of the template file package manager in the above embodiment when executing the computer program.
[0195] The electronic device provided in this embodiment may include but is not limited to a smart phone, a tablet computer, a laptop computer or a desktop computer.
[0196] Among them, the processor 21 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 21 can be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). The processor 21 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 21 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 21 may also include an AI (Artificial Intelligence) processor, which is used to process computing operations related to machine learning.
[0197] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include a high-speed random access memory, and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the memory 20 may be an internal storage unit of an electronic device, such as a hard disk of a server. In other embodiments, the memory 20 may also be an external storage device of an electronic device, such as a plug-in hard disk equipped on a server, a smart memory card (Smart Media Card, SMC), a secure digital (SecureDigital, SD) card, a flash card (Flash Card), etc. Further, the memory 20 may also include both an internal storage unit of an electronic device and an external storage device. The memory 20 may not only be used to store application software and various types of data installed in the electronic device, such as: the code of the program in the process of executing the management method of the template file package manager, etc., but also may be used to temporarily store data that has been output or is to be output. In this embodiment, the memory 20 is at least used to store the following computer program 201, wherein, after the computer program is loaded and executed by the processor 21, the relevant steps of the XXX method disclosed in any of the aforementioned embodiments can be implemented. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, etc., and the storage method may be temporary storage or permanent storage. The operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include but is not limited to a set offset (data corresponding to the management result of the template file package manager), etc.
[0198] In some embodiments, the electronic device may further include a display screen 22, an input / output interface 23, a communication interface 24, a power supply 25, and a communication bus 26. Among them, the display screen 22 and the input / output interface 23, such as a keyboard, belong to the user interface, and the optional user interface may also include a standard wired interface, a wireless interface, and the like. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, and an OLED (Organic Light-Emitting Diode) touch device, and the like. The display may also be appropriately referred to as a display screen or a display unit, which is used to display information processed in the electronic device and to display a visual user interface. The communication interface 24 may optionally include a wired interface and / or a wireless interface, such as a WI-FI interface, a Bluetooth interface, and the like, which are generally used to establish a communication connection between the electronic device and other electronic devices. The communication bus 26 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, and the like. The bus may be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, Figure 8 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0199] Those skilled in the art will understand that Figure 8 The structure shown in the figure does not constitute a limitation on the electronic device, and may include more or fewer components than shown in the figure.
[0200] It is understandable that if the management method of the template file package manager in the above embodiment is implemented in the form of 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 is essentially 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, and the computer software product is stored in a storage medium to execute all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), electrically erasable programmable ROM, register, hard disk, removable disk, CD-ROM, magnetic disk or optical disk and other media that can store program code.
[0201] Based on this, Fig. 9As shown, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program 31 is stored. When the computer program 31 is executed by a processor, the steps of the management method of the template file package manager as described above are implemented.
[0202] The above is a detailed introduction to a management method, computer program product, electronic device and computer-readable storage medium of a template file package manager provided by an embodiment of the present invention. The various embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the various embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part description.
[0203] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.
[0204] The above is a detailed introduction to the management method, computer program product, electronic device and computer-readable storage medium of a template file package manager provided by the present invention. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the scope of protection of the present invention.
Claims
1. A management method for a template file package manager, characterized in that: include: Get template file packages uploaded by multiple users; Determine multiple target warehouses from all warehouses in the cluster for storing template file packages according to the total number of users of each of the users; Uploading the template file packages of the plurality of users to the plurality of target warehouses; wherein each of the target warehouses corresponds to one or more users; wherein the method further includes: Obtaining a template deployment request sent by a user, wherein the template deployment request includes template information, a scenario name, and a service name; Performing legitimacy verification on the user and the template deployment request; If the verification is passed, determining whether the template deployment request is an internal call according to the header data of the template deployment request; If it is an internal call, the estimated size of the usage scenario resources is determined according to the template deployment request; Determine a target scene according to the scene name, and judge whether the scene remaining resources of the target scene meet the estimated size of the used scene resources; If the estimated size of the usage scenario resources is met, a target template file package is obtained from the corresponding target warehouse according to the template information, and a template file package manager is used to deploy the corresponding service on the server according to the target template file package; If it is not an internal call, determine whether to start the template file package manager deployment approval process; If the template file package manager deployment approval process is started, and the corresponding template deployment is performed through the template file package manager deployment approval process; If the template file package manager deployment approval process is not started, the process returns to the step of determining the estimated size of the usage scenario resources according to the template deployment request.
2. The management method of the template file package manager according to claim 1, characterized in that: The step of determining multiple target warehouses from all warehouses in the cluster for storing template file packages according to the total number of users of each of the users includes: When the total number of users is not greater than the total number of warehouses of all warehouses in the cluster for storing template file packages, M warehouses are selected from all the warehouses as target warehouses, where M is the total number of users and M is an integer not less than 2; When the total number of users is greater than the total number of warehouses, all the warehouses in the cluster are used as target warehouses.
3. The management method of the template file package manager according to claim 2, characterized in that: The uploading of the template file packages of the plurality of users to the plurality of target warehouses comprises: When the total number of users is not greater than the total number of warehouses of all warehouses in the cluster for storing template file packages, a target warehouse is allocated to each of the users; For each of the users, uploading the template file package of the user to the corresponding target warehouse; In the case where the total number of users is greater than the total number of warehouses, the target warehouse corresponding to each user is determined according to the file size of the template file package uploaded by each user; For each user corresponding to each target warehouse, the template file package of the user is uploaded to the corresponding target warehouse.
4. The management method of the template file package manager according to claim 3, characterized in that: The determining the target warehouse corresponding to each user according to the file size of the template file package uploaded by each user includes: Sort the users according to the file size of the template file package uploaded by each user; Each time, the user with the largest file size is selected from the currently unassigned users and assigned to a target warehouse with the smallest total task size of the currently assigned users among the target warehouses, until a user is assigned to each target warehouse; The user with the largest file size is selected from the currently unassigned users and assigned to a target warehouse with the least number of currently assigned users among the target warehouses until all users are assigned.
5. The management method of the template file package manager according to claim 3, characterized in that: The uploading of the user's template file package to the corresponding target warehouse includes: Perform legality verification based on template file upload request; If the verification is successful, each received fragment file corresponding to the template file package uploaded by the user is stored in the specified directory of the business container, and the fragment information of each fragment file is recorded; Determine a fragmentation order according to the fragmentation information of each fragmentation file, and write each fragmentation file into the same file according to the fragmentation order; The written file is decompressed to obtain a decompressed file, and the decompressed file is uploaded to the target warehouse corresponding to the user.
6. The management method of the template file package manager according to claim 1, characterized in that: Also includes: Create corresponding applications according to the user's application creation instructions; Obtain template information of the template file uploaded by the user, and determine whether the uploaded template information exists under the application; If there is no uploaded template information in the application, uploading the template information uploaded by the user to the application; In the case that there is uploaded template information under the application, if the template name in the template information uploaded by the user is the same as the template name in the uploaded template information under the application, and the template version in the template information is different from the template version in the uploaded template information, the template information uploaded by the user is uploaded to the application.
7. The management method of the template file package manager according to claim 1, characterized in that: Also includes: Determine the target template file according to the received template file viewing instruction; Displaying the hierarchical structure and file content of the target template file in the first display area; The target template file is converted into a preset original format, and the converted target template file is displayed in the second display area, wherein the preset original format is used to represent a data serialization format.
8. The management method of the template file package manager according to claim 1, characterized in that: Also includes: Determine the application to be transferred and the target user according to the application ownership transfer instruction input by the user; It is determined whether the target user is in the same user group as the user; if so, the ownership of the application to be transferred is transferred to the target user.
9. The management method of the template file package manager according to claim 8, characterized in that: Also includes: Determine the application to be shared and the sharing object according to the application ownership sharing instruction input by the user; In a case where the sharing object is a user group to which the user belongs, sharing the application to be shared with each user in the user group to which the user belongs; When the sharing object is the cluster where the user is located, the application to be shared is shared to all users in the cluster.
10. The management method of the template file package manager according to claim 1, characterized in that: Also includes: Get the status of each deployed service; The status of each of the services is displayed separately.
11. The management method of the template file package manager according to claim 10, characterized in that: The obtaining of the status corresponding to each deployed service includes: For each deployed service, obtain the scenario, service name, and template file package manager name corresponding to the service; Acquire each sub-service under the service according to the scenario, the service name and the template file package manager name; Acquire, according to each sub-server, a container group corresponding to each of the sub-services; When the status of each container in each of the container groups is not waiting or terminating, determining that the status of the service is running; In a case where the status of at least one container in each of the containers in each of the container groups is waiting or terminated, it is determined that the status of the service is failed.
12. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by a processor, the steps of the management method of the template file package manager described in any one of claims 1 to 11 are implemented.
13. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to execute the computer program to implement the steps of the template file package manager management method as claimed in any one of claims 1 to 11.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the management method of the template file package manager according to any one of claims 1 to 11 are implemented.
Citation Information
Patent Citations
Model file storage method and device, electronic equipment and readable storage medium
CN117539837A