Asynchronous Service Deployment Method and Device for Edge Cloud Network

By adopting the collaborative work of microservice orchestration and layer cache update conditions in the edge cloud network, an asynchronous service deployment method is built, which solves the problem of how to efficiently utilize resources under resource constraints, and achieves the balance between service performance and resource utilization and maximizes service effectiveness.

CN119814568BActive Publication Date: 2025-07-01BEIJING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510301125.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-14
Publication Date
2025-07-01
Estimated Expiration
2045-03-14

AI Technical Summary

Technical Problem

When edge cloud networks are resource-constrained, how can they efficiently utilize resources to balance service performance and resource utilization?

Method used

Through the collaborative work of microservice orchestration and layer cache update conditions, an asynchronous service deployment method is built. This method includes checking the layer cache update conditions in the current time slot. If it is not met, the total layer loading time function is constructed based on the mirror layer requirements, storage volume, deployment information and data access rate of the target microservice, and optimizing the service utility function to determine the deployment strategy with the goal of maximizing service utility.

Benefits of technology

It effectively balances service performance and resource utilization, and maximizes service utility through short-term microservice orchestration and long-term cache update strategies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119814568B_ABST
    Figure CN119814568B_ABST
Patent Text Reader

Abstract

The present application provides an asynchronous service deployment method and apparatus for an edge cloud network. The method includes: in response to a deployment request for a target microservice received within the current time slot, checking whether the current time slot meets the layer cache update condition; if not, for any deployable node, constructing a total layer loading time function that changes with the time slot for the target microservice to be deployed on the node according to the image layer required by the target microservice, the storage amount of the corresponding image layer, the microservice deployment information, the scheduling information for scheduling any required image layer from any other node, and the data access rate between nodes, so as to construct a service utility function that changes with the time slot corresponding to the node by combining the profit information and startup cost of the node, thereby determining the deployment strategy for the target microservice, and starting the target microservice based on the image layer required by the target microservice. This method effectively balances service performance and resource utilization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of edge cloud networks. Specifically, it relates to a method and device for asynchronous service deployment in an edge cloud network. Background Art

[0002] With the explosive growth of service requests at the network edge, edge clouds have gradually become an important platform for supporting applications with low latency and high computing requirements. Compared with traditional remote central clouds that often cannot meet real-time requirements, edge clouds provide services through geographically distributed nodes, significantly reducing data transmission latency and improving response speed. However, edge cloud networks face the challenge of resource constraints, so how to efficiently utilize resources is crucial. Summary of the Invention

[0003] The purpose of the embodiments of this application is to provide a method and device for asynchronous service deployment in an edge cloud network. By working together micro-service orchestration and cache updates conditioned on layer cache updates, it effectively balances service performance and resource utilization.

[0004] In a first aspect, a method for asynchronous service deployment in an edge cloud network is provided. The edge cloud network includes multiple nodes using container image technology. The method may include:

[0005] In response to a deployment request for a target micro-service received within the current time slot, check whether the current time slot meets the layer cache update condition;

[0006] If not, for any deployable node, in the current time slot, according to the image layer required by the target micro-service, the storage amount of the corresponding image layer, the micro-service deployment information, the scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and the other node, construct a total layer loading time function that changes with the time slot for the deployment of the target micro-service on the node; wherein, the micro-service deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target micro-service includes the corresponding image layer, and the scheduling state;

[0007] Based on the obtained profit information, startup cost, and total layer loading time that changes with the time slot of the node, construct a service utility function that changes with the time slot corresponding to the node; the service utility function represents the service utility of the node for deploying the target micro-service under different scheduling information for any image layer among all image layers at different time slots;

[0008] With the goal of maximizing service utility, optimize the service utility function corresponding to the corresponding node, determine the deployment strategy of the target microservice, and start the target microservice based on the image layer required by the target microservice m. The deployment strategy includes the target microservice deployment information and target scheduling information corresponding to any one of all the image layers.

[0009] In a possible implementation, the method further includes:

[0010] If so, for any deployable node, obtain the scheduling information of each image layer on the node at each time slot within the historical time period;

[0011] Process the scheduling information of each time slot within the historical time period to determine the layer age of each image layer corresponding to the next time slot of the corresponding time slot and the expiration value of the corresponding layer age;

[0012] When the expiration value of any image layer is greater than the configured layer age expiration value, delete the corresponding image layer on the node to update the current layer cache status of the node; wherein, the configured layer age expiration value is determined based on the layer age of the corresponding image layer in consecutive time slots.

[0013] In a possible implementation, the method further includes:

[0014] For any deployable node, if the same image layer is deleted on the node within each of two consecutive historical time periods, increase the configured layer age expiration value by a preset offset.

[0015] In a possible implementation, according to the image layer required by the target microservice, the storage amount of the corresponding image layer, the microservice deployment information, the scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and the other node, construct the total layer loading time function that changes with time slots for the target microservice deployed on the node, including:

[0016] Based on any image layer required by the target microservice, the storage amount of the corresponding image layer, the microservice deployment information, the scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and the other node, determine the layer loading time function that changes with time slots for scheduling this image layer from the other node to the node;

[0017] Based on all the image layers required by the target microservice and the layer loading time function that changes with time slots for scheduling the corresponding image layer from any other node n' to the node, construct the total layer loading time function that changes with time slots.

[0018] In a possible implementation, the microservice deployment information is expressed as:

[0019]

[0020] Among them, The microservice deployment information indicating whether the target microservice m is deployed on the node n at time slot t, The current layer cache status indicating whether the image layer l is cached on the node n at time slot t, The layer inclusion status indicating whether the target microservice m includes the image layer l at time slot t, The current layer cache status indicating whether the image layer l is cached on the node n at time slot t, Indicating whether at time slot t, from node The scheduling information scheduled to the node n. If , is 0, and N is the total number of nodes.

[0021] In a possible implementation, with the goal of maximizing service utility, the service utility function corresponding to the corresponding node is optimized to determine the deployment information of the target microservice, including:

[0022] For any deployable node, obtain the layer age corresponding to the scheduling information of each image layer of the image layers required by the target microservice in each time slot within the historical time period, and the scheduling policy set corresponding to any image layer. The scheduling policy set includes the scheduling information for scheduling each image layer between the node and other nodes;

[0023] Sort the scheduling information in the scheduling policy set in descending order of layer age, and select the first number of scheduling information ranked at the front;

[0024] If the first number of scheduling information satisfies the preset constraint conditions and the first scheduling information that satisfies the maximum value output by the service utility function, then based on the first scheduling information, construct the first scheduling set;

[0025] Select the second number of scheduling information from the other scheduling policies in the scheduling policy set except the first scheduling set;

[0026] If the second number of scheduling information satisfies the preset constraint conditions and the second scheduling information that satisfies the maximum value output by the service utility function, then based on the second scheduling information, construct the second scheduling set;

[0027] Select the third number of scheduling information from the other scheduling policies in the scheduling policy set except the first scheduling set and the second scheduling set, and construct the third scheduling set;

[0028] Based on a preset optimization processing method, process the initial scheduling set and the third scheduling set to obtain a target scheduling set that satisfies the service utility function and aims to maximize the service utility; the initial scheduling set is the union of the first scheduling set and the second scheduling set;

[0029] Determine the target scheduling information in the target scheduling set and the target microservice deployment information corresponding to the corresponding target scheduling information as the deployment strategy of the target microservice.

[0030] In a possible implementation, the preset optimization processing method is a local search method that performs swap operations;

[0031] Based on a preset optimization processing method, process the initial scheduling set and the third scheduling set to obtain a target scheduling set that satisfies the service utility function and aims to maximize the service utility, including:

[0032] Use the scheduling information in the initial scheduling set as the input data of the service utility function, and obtain the first service utility output by the service utility function;

[0033] For any scheduling information in the third scheduling set, swap the scheduling information with an unswapped scheduling information in the initial scheduling set, and use the scheduling information in the swapped initial scheduling set as the input data of the service utility function to obtain the second service utility output by the service utility function;

[0034] If the second service utility is greater than the first service utility, use the swapped initial scheduling set as the new initial scheduling set, and return to execute the step: use the scheduling information in the initial scheduling set as the input data of the service utility function, and obtain the first service utility output by the service utility function, until all the scheduling information in the third scheduling set has been traversed;

[0035] Use the swapped initial scheduling set corresponding to the maximum service utility output by the service utility function as the target scheduling set.

[0036] In a second aspect, an asynchronous service deployment device for an edge cloud network is provided. The edge cloud network includes multiple nodes using container image technology. The device may include:

[0037] An inspection unit, configured to respond to a deployment request for a target microservice received within the current time slot, and inspect whether the current time slot satisfies the layer cache update condition;

[0038] Building unit, for if not, for any deployable node, in the current time slot, according to the image layers required by the target microservice, the storage amount of the corresponding image layers, the microservice deployment information, the scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and the other node, build the total layer loading time function of the target microservice deployed on the node varying with the time slot; wherein, the microservice deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target microservice includes the corresponding image layer, and the scheduling state;

[0039] And, based on the obtained profit information, startup cost of the node, and the total layer loading time varying with the time slot, establish the service utility function of the node varying with the time slot; the service utility function characterizes the service utility of the node for deploying the target microservice under different scheduling information for any one of all the image layers at different time slots;

[0040] Determination unit, for aiming at maximizing the service utility, perform optimization processing on the service utility function corresponding to the corresponding node, and determine the deployment strategy of the target microservice;

[0041] Startup unit, for starting the target microservice based on the image layers required by the target microservice, and the deployment strategy includes the target microservice deployment information and the target scheduling information corresponding to any one of all the image layers.

[0042] In a third aspect, an electronic device is provided, which includes a processor, a communication interface, a memory, and a communication bus. Among them, the processor, the communication interface, and the memory complete communication with each other through the communication bus;

[0043] The memory is used for storing a computer program;

[0044] The processor is used for implementing the method steps described in any one of the first aspects when executing the program stored on the memory.

[0045] In a fourth aspect, a computer-readable storage medium is provided, in which a computer program is stored, and the computer program realizes the method steps described in any one of the first aspects when being executed by a processor.

[0046] In the asynchronous service deployment method for an edge cloud network provided by this application, the edge cloud network includes multiple nodes that adopt container image technology, including: in response to a deployment request for a target microservice received within the current time slot, checking whether the current time slot meets the layer cache update condition; if not, for any deployable node, in the current time slot, according to the image layers required by the target microservice, the storage amount of the corresponding image layers, microservice deployment information, scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and other nodes, constructing a total layer loading time function that changes with the time slot for the target microservice deployed on the node; the microservice deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target microservice contains the corresponding image layer, and the scheduling state; based on the obtained profit information, startup cost of the node, and the total layer loading time that changes with the time slot, constructing a service utility function that changes with the time slot for the node; the service utility function characterizes the service utility of the node for deploying the target microservice under different scheduling information for any one of all the image layers at different time slots; aiming to maximize the service utility, optimizing the service utility function corresponding to the corresponding node to determine the deployment strategy of the target microservice, and starting the target microservice based on the image layers required by the target microservice, the deployment strategy includes the target microservice deployment information and target scheduling information corresponding to any one of all the image layers. This method effectively balances service performance and resource utilization through the coordination of microservice orchestration on a short time scale (time slot) and cache update based on layer cache update conditions on a long time scale. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] To more clearly illustrate the technical solutions of the embodiments of this application, the following will briefly introduce the drawings required to be used in the embodiments of this application. It should be understood that the following drawings only show some embodiments of this application, and therefore should not be regarded as limiting the scope. For those of ordinary skill in the art, without creative efforts, other relevant drawings can also be obtained based on these drawings.

[0048] Figure 1 It is a schematic diagram of the architecture of an edge cloud network provided by an embodiment of this application;

[0049] Figure 2 It is a schematic flowchart of an asynchronous service deployment method for an edge cloud network provided by an embodiment of this application;

[0050] Figure 3 It is a schematic diagram of the structure of an asynchronous service deployment device for an edge cloud network provided by an embodiment of this application;

[0051] Figure 4 It is a schematic diagram of the structure of an electronic device provided by an embodiment of this application. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0052] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments of the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the scope of protection of the present application. Unless otherwise defined, the technical terms or scientific terms used in the present application shall have the ordinary meaning understood by those of ordinary skill in the art in the field to which the present invention belongs. The "first", "second" and similar terms used in the present application do not indicate any order, quantity or importance, but are only used to distinguish different components. The terms such as "including" or "comprising" mean that the elements or objects appearing before this word cover the elements or objects listed after this word and their equivalents, without excluding other elements or objects.

[0053] 1. Microservice Deployment in Edge Cloud Network

[0054] The edge cloud network mainly consists of edge nodes - base stations - server connections, network infrastructure, and data centers distributed in the vicinity of users, forming a distributed computing architecture. These nodes have certain computing, storage, and network capabilities, and can provide services near the terminal device, significantly reducing the latency of data transmission and improving the service response speed. The microservice architecture splits the application into multiple independent small services, each service responsible for a single function, and communicates through lightweight APIs. When deployed in the edge cloud, this architecture can achieve flexible distribution of services and dynamic scheduling according to node resources. At the same time, the independence of microservices supports on-demand scaling, facilitating rapid updates and fault isolation.

[0055] However, in the edge cloud network, microservice deployment also faces problems such as resource coordination, service discovery, and communication latency. How to efficiently manage distributed microservices has become the key, and it is necessary to reasonably schedule and optimize resource allocation to ensure stable performance.

[0056] 2. Containerized Microservices

[0057] Container technology is a lightweight solution based on operating system virtualization, featuring high resource utilization efficiency and fast startup characteristics. Compared with traditional virtual machines, containers do not require a complete operating system, and each container shares the host kernel, thus significantly reducing system overhead. Docker is the most popular container technology. By writing a Dockerfile to build container images, it packages the application and its dependencies into a standardized unit, achieving consistency in cross-platform deployment. Container images adopt a layered structure, including a base image, dependency layers, an application layer, and a writable layer, making image storage and distribution more efficient. In addition, container orchestration tools such as Kubernetes provide capabilities for automated deployment, scaling, load balancing, and container management, becoming the standard solution for containerized applications in production environments. The combination of container technology and microservices architecture is an important trend in current cloud-native technologies. Each microservice is deployed as an independent container, and services communicate through APIs, thus achieving modularity, flexible scalability, and high availability. The fast startup and resource isolation characteristics of containers, combined with the orchestration capabilities of Kubernetes, can realize the automatic deployment and elastic scaling of services, providing a complete automation solution from development to operation and effectively improving development efficiency and operation and maintenance capabilities.

[0058] 3. Cache Update Strategy

[0059] Cache update strategy is a key technology for optimizing data access efficiency and improving system performance. It mainly addresses issues such as data storage, replacement, and expiration in the cache to maximize data hit rate and reduce access latency within limited cache space. In cache systems, common update strategies include Least Recently Used (LRU), Least Frequently Used (LFU), and First In First Out (FIFO) methods. Cache update strategies play an important role in scenarios such as CDN networks, database caches, edge computing, and Internet of Things data management. By reasonably selecting and optimizing strategies, efficient data storage and access can be achieved under limited resource constraints, reducing latency, bandwidth consumption, and improving system stability. With the continuous growth of data scale, how to dynamically optimize cache update strategies according to different application scenarios has become one of the key research directions.

[0060] In edge cloud networks, although layer sharing provides significant benefits, layer-aware microservices introduce additional complexity in service configuration in edge cloud networks. By implementing effective caching strategies, frequently accessed layers can be stored locally, thus minimizing the dependence on remote registries. Effective service configuration requires complex microservice orchestration strategies to optimize layer distribution while reducing redundant transmissions. In this context, service configuration in edge cloud networks poses significant challenges:

[0061] 1) Complex issues in microservice orchestration: Container images adopt a layered structure, and the layer sharing mechanism enables computing nodes to achieve resource reuse, reduce network transmission costs and storage overheads, and improve deployment efficiency and service quality by scheduling and caching the image layers of each microservice. However, the diversity of the required image layers for different microservices makes deployment, scheduling, and caching extremely complex, mainly manifested in the following aspects: On the one hand, there are characteristics of partial overlap or complete independence between image layers. How to efficiently schedule and share these layers to reduce redundancy and optimize transmission costs is a complex decision-making problem. On the other hand, the computing, storage, and network resources of edge cloud network nodes are limited, and the nodes cannot cache all image layers without limit. How to select the most suitable layers for caching under resource constraints to ensure the running requirements of microservices further increases the complexity of the problem. In addition, due to the dynamic changes in user requirements, microservices may need to be frequently migrated or redeployed, which leads to frequent occurrence of image layer scheduling and transmission, increasing network latency and bandwidth consumption, thus affecting the user's quality of service (QoS). In this process, microservice orchestration needs to balance the orchestration cost and service quality. Excessive pursuit of resource sharing and caching optimization will increase the scheduling complexity, while ignoring layer sharing may lead to resource waste and service quality degradation. Therefore, how to efficiently schedule and cache image layers on edge cloud nodes, both achieving the optimal utilization of resources and meeting the high requirements of users for service quality in a dynamic environment, has become a major challenge in microservice orchestration.

[0062] 2) Redundancy issues of container image layers: It is mainly reflected in the duplicate storage and resource waste between multiple image layers.

[0063] In container technology, an image usually consists of multiple read-only layers, and each layer contains some modification information or supplementary information about the application or operating system. Although these layers can be reused and shared, reducing storage overheads, with the increase in the number of images and the changes in application requirements, the redundancy issues between image layers become more prominent. Redundancy is mainly manifested in two aspects: One is that different container images may contain the same or similar layers, and these layers may store duplicate data, resulting in waste of storage space. The other is that when a container image is updated, the old image layers may not be effectively cleaned up. Especially when multiple containers use different versions of images, the redundant layers may accumulate in the system, increasing the burden on the disk. For some infrequently accessed image layers, the redundancy problem is more serious. Especially in resource-constrained environments, this redundancy may lead to huge storage costs and performance bottlenecks.

[0064] Maintaining the up-to-date status of container images and cleaning up redundant image layers are resource-intensive processes. Whenever an image is updated or deleted, all related containers must be rebuilt or resynchronized, which consumes a large amount of computing and storage resources. Especially in large-scale containerized application scenarios, how to effectively manage and reduce the redundancy of image layers and optimize storage utilization is a key issue for improving system performance and reducing operating costs.

[0065] To solve the above technical problems, an embodiment of the present application provides an asynchronous service deployment method for an edge cloud network, as Figure 1 shown. The edge cloud network may include: multiple nodes distributed in the vicinity of users, network infrastructure, and data centers. This architecture is a distributed computing architecture, and this asynchronous service deployment method can be applied to the network infrastructure. Among them, each node adopts container image technology, realizes the reuse and sharing of image layers, and reduces storage overhead.

[0066] The asynchronous service deployment method for the edge cloud network provided by the embodiment of the present application solves a joint optimization problem with a double time scale. The goal is to maximize service utility, that is, to maximize the profit of meeting user service requests minus the cost of microservice startup.

[0067] The goal is to solve the following key problems: i) how to perform complex hierarchical fine-grained microservice orchestration, including microservice deployment and layer scheduling; ii) how to timely prune the long-unused layers cached in computing nodes. By solving these problems, the present application mainly includes the following two processes:

[0068] Microservice orchestration on a short time scale (i.e., time slots). The present application characterizes microservice orchestration as a microservice deployment and layer scheduling problem. Under the constraints of a p-scalable system, the present application converts microservice deployment and layer scheduling into sub-module functions and solves them using a three-stage approximation algorithm.

[0069] Layer cache update on a long time scale (i.e., a time period formed by consecutive time slots). The present application introduces the Age of Layer (AoL) to effectively update the cache layer. When reaching the long time scale, update discrimination is performed according to the layer age value.

[0070] Assume there is a node set and a microservice set , indexed by and respectively. The system performs service deployment according to time slots, denoted by . Nodes can deploy corresponding microservices by calling the corresponding image layers on other nodes. The image layers are represented by the set , indexed by . Each layer l has a storage size . Let Indicates whether the microservice m contains the image layer l. The microservice m can be successfully started on the node n only when all required layers are fully loaded within the time threshold to ensure QoS.

[0071] Microservice deployment variable , indicates that the microservice m is deployed on the node n at time t; the scheduling variable of the image layer , indicates that the image layer l is scheduled from the node to n at time t, where, if , is 0, that is, the scheduling from the node n to itself is not considered.

[0072] For the convenience of microservice deployment, the image layers of microservices can be cached on any computing node and shared with other nodes through layer scheduling. At time slot t, represents the layer caching policy, and the caching policy indicates whether the node n caches the image layer l at the current time t. Caching the image layer can accelerate the microservice deployment time but will consume storage resources. All image layers cached on the computing node are subject to its available storage resources constraint:

[0073]

[0074] If the required layer l is not stored locally, it must be scheduled from another computing node. is the layer scheduling policy at time slot t. The layer l can be loaded onto the node n only when n′ stores the image layer l for each n, n′ ∈ , l ∈ , that is:

[0075]

[0076] At time slot t, the microservice can be successfully deployed on the computing node only when all required layers for each n ∈ , m ∈ and l ∈ have been fully loaded, that is:

[0077]

[0078] If the computing node has cached the required layer, there is no need to schedule it from another node. Similarly, if the node has scheduled the required layer, there is no need to cache it. In addition, the computing node should only select one node (including itself) to schedule the layer. Therefore, for ∀n′, n, l, t:

[0079]

[0080] The preferred embodiments of the present application will be described below in conjunction with the accompanying drawings of the specification. It should be understood that the preferred embodiments described herein are only used to illustrate and explain the present application, and are not used to limit the present application. And without conflict, the embodiments in the present application and the features in the embodiments can be combined with each other.

[0081] Figure 2 It is a schematic flowchart of an asynchronous service deployment method for an edge cloud network provided by an embodiment of the present application. As Figure 2 shown, the method may include:

[0082] Step S210, in response to a deployment request for a target microservice received in the current time slot, check whether the current time slot t meets the layer cache update condition.

[0083] Among them, the layer cache update condition is the condition of reaching the update period.

[0084] In specific implementation, if the current time slot t is within the update period or at the boundary moment of the update period, it indicates that the layer cache update condition is met, otherwise it is not met.

[0085] Step S220, for any deployable node, determine the total layer loading time varying with the time slot corresponding to the node according to the check result.

[0086] Among them, the deployable node can be a node with available resources, or a node that has cached at least one image layer required by the target microservice m. The present application does not make any limitations here.

[0087] (1) When the current time slot t does not meet the layer cache update condition, for any deployable node, at the current time slot, according to the image layer required by the target microservice, the storage amount s1 of the corresponding image layer, the microservice deployment information, the scheduling information y for scheduling any required image layer from any other deployable node, and the data access rate between the node and other nodes , construct a function of the total layer loading time varying with the time slot for the target microservice deployed on the node . Among them, the microservice deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target microservice m includes the corresponding image layer, and the scheduling state.

[0088] Specifically, based on any image layer required by the target microservice, the storage amount s1 of the corresponding image layer, the microservice deployment information, the scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and other nodes , determine the layer loading time function varying with the time slot for scheduling this image layer from other node n' to node n;

[0089]

[0090] Among them, represents the layer loading time function that varies with time slots for scheduling the image layer l from other node n' to node n for the target microservice m. is the data access rate between computing nodes n' and n.

[0091] Based on all the image layers required by the target microservice m and the layer loading time function that varies with time slots for scheduling the corresponding image layer from any other node n' to the node n, construct a total layer loading time function that varies with time slots (represented as the startup time of microservice m).

[0092]

[0093] Among them, represents the total layer loading time function that varies with time slots.

[0094] (2) When the current time slot t meets the layer cache update condition, for any deployable node, obtain the scheduling information y of each image layer on the node in each time slot within the historical time period; process the scheduling information of each time slot within the historical time period to determine the layer age of each image layer corresponding to the next time slot of the corresponding time slot and the expiration value of the corresponding layer age; specifically:

[0095] The layer cache update of the image layer l is performed on each long time scale, and the layer age of the layer l stored on the node n' is defined as:

[0096]

[0097] Among them, is a positive integer, represents the number of times of scheduling the image layer l from the computing node n' at time slot , is the ratio of the long time scale to the short time scale. It should be noted that is updated at each short time scale t (i.e., each time slot t) as:

[0098]

[0099] Among them, the maximum upper limit of is represented as to ensure , so there is .

[0100] The expiration value of the layer l on the node n' at time slot t, represented as , is defined as:

[0101]

[0102] Among them, is any time slot among time slots 1 to t.

[0103] When the layer age of any mirror layer is greater than the configured layer age expiration value, the corresponding mirror layer is deleted on the node to update the current layer cache status of the node; among them, the configured layer age expiration value is determined based on the layer age of the corresponding mirror layer in consecutive time slots. For example, if the value exceeds a threshold A, then layer l will be deleted from the node ; otherwise, layer l will be retained on this node and the layer age is reset to zero and starts accumulating again.

[0104] Furthermore, for any deployable node, if the same mirror layer is deleted on the node in each historical time period of two consecutive historical time periods, the configured layer age expiration value is increased by a preset offset. That is, if layer l is deleted twice in the past two consecutive large time scales, the threshold will be increased by the offset ∆A, and the threshold is adjusted to the empirical value A + ∆A to avoid setting an unreasonable threshold.

[0105] Through the strategy of long-time scale cache update in the above embodiments of the present application, regular deletion of storage resources is achieved, which can effectively save storage resources. It should be noted that the cache status of the node will be increased in each short time scale. Due to the scheduling of mirror layers, new cache content will be added to each node at each time. In the long time scale, a regular cleanup will be performed through the defined method of layer age. In this way, the infinite expansion of the cache is inhibited, and the impact on the service deployment performance in the entire network is avoided to the greatest extent. Through experimental verification, using this method of regular cache update, storage resource savings can be achieved without affecting the services provided by the computing network.

[0106] Step S230: Based on the obtained profit information, startup cost of the node, and the total layer loading time varying with time slots, construct a service utility function corresponding to the node that varies with time slots.

[0107] Among them, the service utility function characterizes the service utility of the node for deploying the target microservice m under different scheduling information for any mirror layer among all mirror layers at different time slots.

[0108] At time slot t, calculate the utility of node n providing services for the request of microservice m as: .

[0109] Among them, is the profit of completing microservice m, is the startup time of microservice m at node n, defined as . In addition, is the profit coefficient of node n, is the cost coefficient of the startup time.

[0110] The maximum value of the service utility function corresponding to the node that changes with the time slot for maximizing the overall utility is defined as the optimization problem:

[0111]

[0112] Converted to:

[0113]

[0114] Can be further converted to:

[0115]

[0116] Can be further converted to:

[0117]

[0118] Step S240: With the goal of maximizing service utility, optimize the service utility function corresponding to the corresponding node, determine the deployment strategy of the target microservice, and start the target microservice based on the image layer required by the target microservice.

[0119] Among them, the deployment strategy may include the target microservice deployment information and target scheduling information corresponding to any one of all the image layers.

[0120] The problem of maximizing utility can be transformed into a set function optimization problem. Considering that a microservice can be deployed on a computing node only when all the required layers are fully loaded, the variable representation form can be obtained:

[0121]

[0122] That is to say, it can be represented by to represent .

[0123] Therefore, the problem of maximizing utility can be transformed into: a set function optimization problem of the layer scheduling strategy for time slot t.

[0124] Define as the set of scheduling strategies, that is, the set of all scheduling strategies. Each element in the set of scheduling strategies uniquely corresponds to , representing the scheduling of layer l from computing node n' to n, that is, a scheduling information.

[0125] Let The set of scheduling strategies considered feasible. Therefore, if , then = 1; otherwise = 0. For , define f( ): = , is the layer cache state after layer cache update. The problem can be reformulated as:

[0126]

[0127]

[0128]

[0129]

[0130]

[0131]

[0132]

[0133] Where:

[0134] , is the indicator function.

[0135] Further, it can be proved that the function of the problem is monotonic and submodular under certain conditions. Submodularity is defined as satisfying that the marginal gain of the function gradually decreases as the set increases. As the variables and gradually increase, the monotonicity and submodularity of the objective function are easy to prove. And the constraint conditions of the problem consist of multiple knapsack constraints and matroid constraints, which together form a p-extendable system and need to satisfy the definition: For an independent system , when a subset adds an element to form a feasible set , the maximum size of the set composed of the remaining elements outside the subset is p. The properties of the p-extendable system are proved as follows:

[0136] Constraints 1, 2, 4, and 5 respectively form a 1-extendable system.

[0137] To determine p, assume that is infinitely close to the set , where | | = . In this case, the minimum number of elements required to satisfy Constraint 3 needs to be calculated. To add the element e ⊆ \ +w to achieve , it is necessary to delete at most − elements from the computing nodes. Therefore, in the worst case, it is necessary to remove at most +w − +4 elements.

[0138] For the above set function maximization problem, this application designs a three-stage approximation algorithm for microservice orchestration in the algorithm. Specifically, in the first stage, the algorithm sorts all orchestration decision elements by layer age and initializes a subset that satisfies the basic constraints at the front of the sorted list . The algorithm obtains by calculating f( )( ) and . In the second stage, we initialize (i.e., U minus U1) by randomly sampling elements from , and obtain ( ) and . In the third stage, we use a local search method based only on swap operations to find an updated basis ∪ .

[0139] In specific implementation, in the first stage:

[0140] Sort the scheduling information in the scheduling policy set in descending order of layer age, and select the first number of scheduling information at the front of the sorted list;

[0141] If the first number of scheduling information satisfies the preset constraint conditions and the first scheduling information that maximizes the output of the service utility function, then based on the first scheduling information, construct a first scheduling set;

[0142] In the second stage:

[0143] Select the second number of scheduling information from other scheduling policies in the scheduling policy set except the first scheduling set;

[0144] If the second number of scheduling information satisfies the preset constraint conditions and the second scheduling information that maximizes the output of the service utility function, then based on the second scheduling information, construct a second scheduling set;

[0145] In the third stage:

[0146] Select the third number of scheduling information from other scheduling policies in the scheduling policy set except the first scheduling set and the second scheduling set, and construct a third scheduling set;

[0147] Based on a preset optimization processing method, process the initial scheduling set and the third scheduling set to obtain a target scheduling set that satisfies the service utility function and aims to maximize the service utility; wherein, the initial scheduling set is the union of the first scheduling set and the second scheduling set;

[0148] Determine the target scheduling information in the target scheduling set and the target microservice deployment information corresponding to the corresponding target scheduling information as the deployment strategy of the target microservice.

[0149] In some embodiments, the preset optimization processing method is a local search method that performs swap operations; based on the preset optimization processing method, process the initial scheduling set and the third scheduling set to obtain a target scheduling set that satisfies the service utility function and aims to maximize the service utility, including:

[0150] Use the scheduling information in the initial scheduling set as the input data of the service utility function, and obtain the first service utility output by the service utility function;

[0151] For any scheduling information in the third scheduling set, swap the scheduling information with an unswapped scheduling information in the initial scheduling set, and use the scheduling information in the swapped initial scheduling set as the input data of the service utility function, and obtain the second service utility output by the service utility function;

[0152] If the second service utility is greater than the first service utility, use the swapped initial scheduling set as the new initial scheduling set, and return to execute the step: use the scheduling information in the initial scheduling set as the input data of the service utility function, and obtain the first service utility output by the service utility function, until all the scheduling information in the third scheduling set has been traversed;

[0153] Use the swapped initial scheduling set corresponding to the maximum service utility output by the service utility function as the target scheduling set.

[0154]

[0155] The asynchronous service deployment method provided by the embodiments of the present application realizes the optimization of maximizing resource utility based on a dual time-scale model. On a short time scale, a three-stage approximation algorithm is used for the dynamic deployment of microservices and the scheduling of the image layer. Through candidate solution set initialization, random sampling expansion, and local search optimization (i.e., the three-stage approximation algorithm), QoS constraints are satisfied and the scheduling efficiency is improved; on a long time scale, the definition of layer age (AoL) is introduced, and the cache update is judged according to the usage frequency and cumulative expiration value of the image layer, and the layers that have not been used for a long time are cleared to optimize the storage resources. Specifically:

[0156] (1) The dual-time-scale model is adopted to solve the optimization problem of maximizing resource utility. By coordinating microservice orchestration at a short time scale with cache update at a long time scale, the framework significantly reduces the microservice startup cost while meeting user service requests. The short-time-scale model focuses on dynamic microservice deployment and mirror layer scheduling to ensure the realization of QoS requirements; the long-time-scale model optimizes the utilization efficiency of storage resources through cache update, avoiding the occupation of storage space by long-unused mirror layers. The dual-time-scale model effectively balances service performance and resource utilization, providing an innovative solution for dynamic service deployment in edge cloud scenarios.

[0157] (2) A three-stage approximation algorithm is used to efficiently solve the joint optimization problem of microservice deployment and layer scheduling. In the algorithm design, first, the candidate solution set is initialized based on layer age sorting, and high-priority orchestration elements that meet the constraints are screened out; then, the candidate solution set is expanded through random sampling to further optimize the deployment strategy from unselected elements; finally, a local search method based on swap operations is used to refine and update the solution set to ensure the maximization of utility under QoS constraints. The design of this algorithm utilizes the monotonicity and submodularity characteristics of the objective function to achieve efficient scheduling of computing node resources under multiple constraints, and is applicable to complex distributed edge cloud environments.

[0158] (3) A long-time-scale cache update mechanism based on layer age definition is used to dynamically optimize the storage resource allocation of computing nodes. Layer age is used as the criterion for cache eviction by calculating the usage frequency and cumulative expiration value of the mirror layer, and a threshold adjustment mechanism is introduced to avoid misdeletion of frequently used services. When the layer age or cumulative expiration value exceeds the set threshold, the system will timely clean up long-unused mirror layers, thereby releasing storage space. Through this dynamic update strategy of information age, storage resources are efficiently utilized, and at the same time, the service performance degradation caused by unreasonable cache update in traditional methods is avoided, providing important support for resource optimization in edge cloud networks.

[0159] Corresponding to the above method, an asynchronous service deployment device for an edge cloud network is further provided in an embodiment of the present application. The edge cloud network includes multiple nodes adopting container image technology, as Figure 3 shown. This device includes:

[0160] An inspection unit 310, configured to check whether the current time slot meets the layer cache update condition in response to a deployment request for a target microservice received within the current time slot;

[0161] A building unit 320, which, if not, constructs, for any deployable node, a total layer loading time function that changes with time slots for deploying the target microservice on the node according to the image layers required by the target microservice, the storage amount of the corresponding image layers, microservice deployment information, scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and the other node in the current time slot; wherein the microservice deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target microservice includes the corresponding image layer, and the scheduling state;

[0162] And, based on the obtained profit information, startup cost, and total layer loading time that changes with time slots of the node, establish a service utility function that changes with time slots corresponding to the node; the service utility function characterizes the service utility of the node for deploying the target microservice under different scheduling information for any one of all image layers at different time slots;

[0163] A determination unit 330, which optimizes the service utility function corresponding to the corresponding node with the goal of maximizing the service utility, and determines the deployment strategy of the target microservice;

[0164] A startup unit 340, which starts the target microservice based on the image layers required by the target microservice, and the deployment strategy includes the target microservice deployment information and target scheduling information corresponding to any one of all image layers.

[0165] The functions of the functional units of the asynchronous service deployment device for the edge cloud network provided in the above embodiments of the present application can be implemented by the above method steps. Therefore, the specific working processes and beneficial effects of each unit in the asynchronous service deployment device for the edge cloud network provided in the embodiments of the present application will not be repeated here.

[0166] Embodiments of the present application also provide an electronic device, as Figure 4 shown, including a processor 410, a communication interface 420, a memory 430, and a communication bus 440, wherein the processor 410, the communication interface 420, and the memory 430 communicate with each other through the communication bus 440.

[0167] The memory 430 is used to store a computer program;

[0168] The processor 410, when executing the program stored on the memory 430, implements the following steps:

[0169] In response to a deployment request for a target microservice received within the current time slot, check whether the current time slot meets the layer cache update condition;

[0170] Otherwise, for any deployable node, in the current time slot, according to the image layers required by the target microservice, the storage amount of the corresponding image layers, the microservice deployment information, the scheduling information for scheduling any required image layer from any other deployable node, and the data access rate between the node and the other node, construct the total layer loading time function that changes with the time slot for the target microservice deployed on the node; wherein, the microservice deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target microservice includes the corresponding image layer, and the scheduling state.

[0171] Based on the obtained profit information, startup cost, and total layer loading time that changes with the time slot of the node, establish the service utility function that changes with the time slot corresponding to the node; the service utility function represents the service utility of the node for deploying the target microservice under different scheduling information for any one of all image layers at different time slots.

[0172] With the goal of maximizing the service utility, optimize the service utility function corresponding to the corresponding node to determine the deployment strategy of the target microservice, and start the target microservice based on the image layers required by the target microservice. The deployment strategy includes the target microservice deployment information and target scheduling information corresponding to any one of all image layers.

[0173] The communication bus mentioned above can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For the sake of convenience in representation, only a thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.

[0174] The communication interface is used for communication between the above-mentioned electronic device and other devices.

[0175] The memory can include Random Access Memory (RAM), and can also include Non-Volatile Memory (NVM), such as at least one disk memory. Optionally, the memory can also be at least one storage device located far from the aforementioned processor.

[0176] The above-mentioned processor may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0177] Since the implementation manners and beneficial effects of the components of the electronic device in the above embodiments for solving problems can be realized by referring to Figure 2 the steps in the embodiments shown, therefore, the specific working process and beneficial effects of the electronic device provided in the embodiments of the present application will not be repeated here.

[0178] In another embodiment provided by the present application, there is also provided a computer-readable storage medium storing instructions, which when running on a computer, cause the computer to execute the asynchronous service deployment method of the edge cloud network in any one of the above embodiments.

[0179] In another embodiment provided by the present application, there is also provided a computer program product containing instructions, which when running on a computer, cause the computer to execute the asynchronous service deployment method of the edge cloud network in any one of the above embodiments.

[0180] Those skilled in the art should understand that the embodiments in the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the embodiments in the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments in the present application can 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.

[0181] Embodiments of the present application are described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, and the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the functions specified in one process Figure 1 one process or multiple processes and / or blocks Figure 1 or a device for implementing the functions specified in multiple blocks.

[0182] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device that implements the functions specified in one process Figure 1 one process or multiple processes and / or blocks Figure 1 or the functions specified in multiple blocks.

[0183] These computer program instructions can also be loaded onto a computer or other programmable data processing device, such that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one process Figure 1 one process or multiple processes and / or blocks Figure 1 or the functions specified in multiple blocks.

[0184] Although the preferred embodiments in the embodiments of the present application have been described, those skilled in the art can make additional changes and modifications once they learn the basic creative concepts. Therefore, the appended claims are intended to be construed to include the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present application.

[0185] Obviously, those skilled in the art can make various changes and variations to the embodiments in the embodiments of the present application without departing from the spirit and scope of the embodiments in the embodiments of the present application. Thus, if these modifications and variations of the embodiments in the embodiments of the present application fall within the scope of the claims of the embodiments of the present application and their equivalent technologies, the embodiments of the present application are also intended to include these changes and variations.

Claims

1. An asynchronous service deployment method for an edge cloud network, characterized in that: The edge cloud network includes a plurality of nodes using container image technology, and the method includes: In response to a deployment request for a target microservice received in a current time slot, checking whether the current time slot satisfies a layer cache update condition; If not, for any deployable node, in the current time slot, according to the image layer required by the target microservice, the storage capacity of the corresponding image layer, the microservice deployment information, the scheduling information of scheduling any required image layer from any other deployable node, and the data access rate between the node and the other nodes, a total layer loading time function of the target microservice deployed on the node that changes with time slots is constructed; wherein the microservice deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target microservice includes the corresponding image layer, and the scheduling information; Construct a service utility function corresponding to the node that changes with time slots, wherein the service utility function represents the service utility of the node n deploying the target microservice m under different scheduling information for any image layer in all image layers at different time slots t. The service utility function is expressed as: in, is the profit of completing the target microservice m, is the startup time of the target microservice m on node n, defined as ; It represents the layer loading time function of scheduling image layer l from other nodes n′ to node n for the target microservice m, which varies with time slots; is the profit coefficient of node n, is the cost coefficient of the startup time; With the goal of maximizing service utility, the service utility function corresponding to the corresponding node is optimized, the deployment strategy of the target microservice is determined, and the target microservice is started based on the image layer required by the target microservice. The deployment strategy includes the target microservice deployment information and target scheduling information corresponding to any image layer in all image layers.

2. The method according to claim 1, characterized in that The method further comprises: If the current time slot meets the layer cache update condition, then for any deployable node, obtain the scheduling information of each image layer on the node in each time slot in the historical time period; Processing the scheduling information of each time slot in the historical time period, determining the layer age of each image layer corresponding to the next time slot of the corresponding time slot and the expiration value of the corresponding layer age; When the expiration value of any image layer is greater than the configured layer age expiration value, the corresponding image layer is deleted on the node to update the current layer cache state of the node; wherein the configured layer age expiration value is determined based on the layer age of the corresponding image layer in continuous time slots.

3. The method according to claim 2, characterized in that The method further comprises: For any deployable node, if the same image layer is deleted on the node in each of two consecutive historical time periods, the configured layer age expiration value is increased by the preset offset.

4. The method according to claim 1, characterized in that According to the image layer required by the target microservice, the storage capacity of the corresponding image layer, the microservice deployment information, the scheduling information of scheduling any required image layer from any other deployable node, and the data access rate between the node and the other nodes, a total layer loading time function of the target microservice deployed on the node that changes with time slots is constructed, including: Based on any image layer required by the target microservice, the storage capacity of the corresponding image layer, the microservice deployment information, the scheduling information of any required image layer scheduled from any other deployable node, and the data access rate between the node and the other nodes, determine the layer loading time function that varies with time slots for scheduling the image layer from the other node to the node; Based on all the image layers required by the target microservice and the layer loading time function that varies with time slots by scheduling the corresponding image layers from any other node n′ to the node, a total layer loading time function that varies with time slots is constructed.

5. The method according to claim 1, characterized in that The microservice deployment information is represented as: in, Microservice deployment information that indicates whether the target microservice m is deployed on node n at time slot t. Indicates whether the current layer cache status of image layer l is cached on node n in time slot t, To characterize whether the target microservice m contains the layer inclusion status of the image layer l at time slot t, To indicate whether node n caches the current layer cache state of image layer l in time slot t, To indicate whether the node Scheduling information dispatched to node n, if , is 0.

6. The method according to claim 2, characterized in that With the goal of maximizing service utility, the service utility function corresponding to the corresponding node is optimized to determine the deployment information of the target microservice, including: For any deployable node, obtain the layer age corresponding to the scheduling information of each image layer in each time slot during the historical time period and the scheduling strategy set corresponding to any image layer, where the scheduling strategy set includes the scheduling information of each image layer between the node and other nodes; Sorting the scheduling information in the scheduling strategy set in descending order of layer age, and selecting the first number of scheduling information that are at the front after sorting; If there is first scheduling information in the first number of scheduling information that satisfies the preset constraint condition and satisfies the requirement of making the service utility function output a maximum value, constructing a first scheduling set based on the first scheduling information; Selecting a second number of scheduling information from other scheduling strategies in the scheduling strategy set except the first scheduling set; If there is second scheduling information in the second number of scheduling information that satisfies the preset constraint condition and satisfies the requirement of making the service utility function output a maximum value, constructing a second scheduling set based on the second scheduling information; Selecting a third number of scheduling information from other scheduling strategies in the scheduling strategy set except the first scheduling set and the second scheduling set to construct a third scheduling set; Based on a preset optimization processing method, the initial scheduling set and the third scheduling set are processed to obtain a target scheduling set that satisfies the service utility function to maximize the service utility; the initial scheduling set is the union of the first scheduling set and the second scheduling set; The target scheduling information in the target scheduling set and the target microservice deployment information corresponding to the corresponding target scheduling information are determined as the deployment strategy of the target microservice.

7. The method according to claim 6, characterized in that The preset optimization processing method is a local search method for performing a swap operation; Based on a preset optimization processing method, the initial scheduling set and the third scheduling set are processed to obtain a target scheduling set that satisfies the service utility function to maximize the service utility, including: Using the scheduling information in the initial scheduling set as input data of the service utility function, and obtaining a first service utility output by the service utility function; For any scheduling information in the third scheduling set, the scheduling information is exchanged with a piece of scheduling information in the initial scheduling set that has not been exchanged, and the scheduling information in the exchanged initial scheduling set is used as input data of the service utility function to obtain a second service utility output by the service utility function; If the second service utility is greater than the first service utility, the exchanged initial scheduling set is used as a new initial scheduling set, and the execution step is returned to: the scheduling information in the initial scheduling set is used as input data of the service utility function, and the first service utility output by the service utility function is obtained; until all the scheduling information in the third scheduling set is traversed; The exchanged initial scheduling set corresponding to the maximum service utility output by the service utility function is used as the target scheduling set.

8. An asynchronous service deployment device for an edge cloud network, characterized in that: The edge cloud network includes a plurality of nodes using container image technology, and the device includes: A checking unit, configured to check, in response to a deployment request for a target microservice received in a current time slot, whether the current time slot satisfies a layer cache update condition; A construction unit, for, if not, for any deployable node, in the current time slot, according to the image layer required by the target microservice, the storage capacity of the corresponding image layer, the microservice deployment information, the scheduling information of scheduling any required image layer from any other deployable node, and the data access rate between the node and the other nodes, to construct a total layer loading time function of the target microservice deployed on the node that varies with time slots; wherein the microservice deployment information is determined based on the current layer cache state of the node, the layer inclusion state indicating whether the target microservice includes the corresponding image layer, and the scheduling information; And, construct a service utility function corresponding to the node that changes with time slots, wherein the service utility function represents the service utility of the node n deploying the target microservice m under different scheduling information for any image layer in all image layers at different time slots t, and the service utility function is expressed as: in, is the profit of completing the target microservice m, is the startup time of the target microservice m on node n, defined as ; It represents the layer loading time function of scheduling image layer l from other nodes n′ to node n for the target microservice m, which varies with time slots; is the profit coefficient of node n, is the cost coefficient of the startup time; A determination unit, configured to optimize the service utility function corresponding to the corresponding node with the goal of maximizing the service utility, and determine the deployment strategy of the target microservice; A startup unit is used to start the target microservice based on the image layer required by the target microservice, and the deployment strategy includes target microservice deployment information and target scheduling information corresponding to any image layer in all image layers.

9. An electronic device, characterized in that: The electronic device comprises a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; Memory, used to store computer programs; A processor, for implementing any of the methods described in claims 1-7 when executing a program stored in a memory.

10. 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 method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Micro-service deployment method and device based on layer sharing in edge environment

    CN114615338A

  • Containerized micro-service intelligent collaborative arrangement method and device

    CN119248414A