Container-based multi-workflow scheduling optimization method in cloud edge environment
By establishing a multi-workflow scheduling optimization model in a cloud-edge environment and using the enhanced multi-objective African vulture algorithm for solving, the problem of multi-optimization goals in a two-layer architecture is solved, and the optimization of resource allocation and service deployment is achieved.
Patent Information
- Application Number
- CN202411494329.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-24
- Publication Date
- 2025-02-14
- Estimated Expiration
- 2044-10-24
AI Technical Summary
The prior art is difficult to effectively solve multiple optimization goals in a two-layer architecture composed of virtual machines and containers, resulting in complex resource allocation and service deployment, slow convergence speed and easy to fall into local optimization.
A multi-workflow scheduling optimization method based on container-based cloud-edge environment is proposed. By establishing a multi-workflow scheduling optimization model, and using the enhanced multi-objective African vulture algorithm for solving it, including dynamic allocation algorithms for containers and virtual machines, archive mechanisms and Adaptive mesh mechanism.
Effectively respond to multiple optimization goals in a two-layer architecture composed of virtual machines and containers, optimize resource allocation and service deployment, improve scheduling performance, and avoid local optimal traps.
Smart Images

Figure CN119440761A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of intelligent computing scheduling optimization, and more specifically, to a multi-workflow scheduling optimization method in a container-based cloud-edge environment. Background Art
[0002] Cloud computing resources have the advantages of scalability and flexibility, which can provide application service providers with higher business agility and more significant economic benefits. The edge computing model is becoming increasingly popular because it can guarantee the quality of service (QoS) for delay-sensitive applications. On the one hand, cloud servers have powerful computing power, but they are far away from users and have high latency; on the other hand, although edge servers have the advantage of short distance, they cannot provide sufficient computing power for some computing-intensive microservices. Deploying microservice-based applications in edge cloud environments is expected to reduce service latency. Compared with traditional architectures, the computing power provided by cloud computing and microservice architectures can shorten the development cycle, simplify development, and enhance scalability by decoupling applications and adjusting service granularity.
[0003] In task scheduling, most microservice applications are described as workflows. A workflow consists of multiple tasks and follows a given execution order. Workflow scheduling maps interdependent tasks to run on different geographically distributed resources so that the workflow can be completed quickly. When managing application workflows in a cloud environment, the workflow task scheduling controller must coordinate distributed resources and schedule tasks to execute in multiple instances. When the instances are not enough to meet the performance requirements, the algorithm must create new instances using cloud resources to achieve a trade-off between performance and cost. Specifically, since containers have fast startup speed and low overhead, they can well support the deployment of microservice instances in a microservice architecture. Since virtual machines have strong isolation capabilities, in safety-critical scenarios, virtual machine hosts can accommodate containers, forming a two-tier architecture. Cloud providers can provide computing resources through virtual machines with different configurations.
[0004] However, virtual machines and containers with various configurations bring difficulties to the scheduling of workflow tasks. First, for a two-tier resource architecture, it is necessary to consider resource allocation at both the container and virtual machine levels. In addition, resource allocation at both levels is limited by resource vectors. Second, unbalanced resource utilization between virtual machines can cause system underload or overload. This can lead to various system failures and major issues related to power consumption, execution time, and machine reliability. Finally, since containers in the same virtual machine share images, newly added containers can be deployed on virtual machines with corresponding images. This helps shorten image pull time and container startup time.
[0005] Therefore, it is necessary to consider how to make full use of existing images to improve the overall performance of task scheduling. Scheduling multiple workflows in a two-tier architecture with virtual machines and containers is a cumbersome task. Improper scheduling can lead to poor resource utilization and may increase completion time, energy consumption, and operating costs.
[0006] In cloud edge environments, a service level agreement must be reached between users and cloud service providers in order to maintain the required quality of service. Task scheduling algorithms are expected to make a good trade-off between the two conflicting requirements of time and cost. How to efficiently schedule concurrent workflows with multiple goals is a fundamental problem in cloud edge environments. In addition, global attention to environmental issues has made the high energy consumption and carbon emissions of data centers an important issue. Renewable energy sources such as wind power have lower carbon emissions. Cloud providers can reduce carbon emissions by placing workloads in data centers that use more renewable energy.
[0007] Two-tier architectures based on virtual machines and containers usually involve dynamic resource allocation, load balancing, and elastic expansion. These problems are highly dynamic and complex. Existing heuristic algorithms usually have the following problems: (1) Many heuristic algorithms are designed to optimize a single objective and are therefore insufficient to effectively solve multiple optimization objectives in a two-tier architecture consisting of virtual machines and containers. (2) In a two-tier architecture consisting of virtual machines and containers, resource allocation and service deployment are very complex. In addition, existing heuristic algorithms lack appropriate coding schemes to effectively address these challenges. (3) Some existing algorithms converge slowly when the solution space is large or the complexity is high. In addition, these algorithms are prone to falling into local optimal states, which affects their ability to identify the global optimal solution. Summary of the invention
[0008] The purpose of the present invention is to overcome the problems existing in the above-mentioned background technology: (1) many heuristic algorithms are designed to optimize a single goal, and therefore are not sufficient to effectively solve multiple optimization goals in a two-layer architecture composed of virtual machines and containers; (2) in a two-layer architecture composed of virtual machines and containers, resource allocation and service deployment are very complex. In addition, the existing heuristic algorithms lack appropriate coding schemes to effectively address these challenges; (3) some existing algorithms converge slowly and are prone to fall into local optimal states when the solution space is large or the complexity is high, thereby affecting their ability to identify the global optimal solution. A multi-workflow scheduling optimization method in a container-based cloud-edge environment is provided.
[0009] To achieve the above object, the technical solution of the present invention is as follows:
[0010] The present invention provides a multi-workflow scheduling optimization method in a container-based cloud edge environment, comprising the following steps:
[0011] According to the execution relationship of workflows, a multi-workflow scheduling optimization model in a container-based cloud-edge environment is established;
[0012] Determine an optimization target based on the multi-workflow scheduling optimization model, establish a coding scheme, and generate an initialization code according to the coding scheme;
[0013] Creating a container and virtual machine dynamic allocation algorithm based on the optimization goal and encoding scheme;
[0014] Creating an enhanced multi-objective African vulture algorithm including an archiving mechanism and an adaptive grid mechanism according to the optimization goal, the encoding scheme, and the container and virtual machine dynamic allocation algorithm;
[0015] Based on the initialization code, the enhanced multi-objective African vulture algorithm is applied to solve the multi-workflow scheduling optimization model.
[0016] Preferably, the multi-workflow scheduling optimization model includes: a user layer, a workflow layer, a microservice instance layer, a virtual machine layer, an edge layer, and a cloud layer;
[0017] The user layer includes multiple user devices, generating various task requests;
[0018] The workflow layer includes multiple workflows to be scheduled formed by task requests of multiple user devices, and each workflow to be scheduled includes several subtasks;
[0019] The microservice instance layer includes a container instance, i.e., a microservice instance, created on a virtual machine according to a container type assigned to a subtask;
[0020] The virtual machine layer includes all virtual machines;
[0021] The edge layer is abstracted from the virtual machine deployed on the edge computing node and is used for edge computing;
[0022] The cloud layer is abstracted from virtual machines deployed on cloud computing nodes and is used for cloud computing.
[0023] Preferably, the structure of the workflow to be scheduled is represented by a directed acyclic graph, which can be expressed as: in represents the set of tasks in a workflow, Represents task t i and t j Priority constraints and data transfer directions between the tasks, each task set is represented by a tuple express, Represents task t i The set of all predecessor tasks, Represents task t i The set of all post-tasks of i Indicates t i To t j The size of the output data, the tasks without predecessor tasks and without successor tasks are respectively represented as entry tasks t O and export task t F .
[0024] Preferably, the optimization objectives include the completion time of the workflow, the energy consumption and carbon emissions of the total workflow;
[0025] The completion time of the workflow includes the completion time of the export task;
[0026] The energy consumption of the total workflow includes the energy consumption of the virtual machine when it is working, the energy consumption of the virtual machine when it is idle, the transmission energy consumption between two computing nodes, and the computing energy consumption of the user device;
[0027] The carbon emissions include carbon emissions from renewable energy and non-renewable energy.
[0028] Preferably, the container-based cloud-edge environment includes a cloud computing node, multiple edge computing nodes, and multiple user computing nodes. represents the set of all nodes, where m is the number of all computing nodes. All edge computing nodes and cloud computing nodes form a fully connected topology. User computing nodes are special edge computing nodes. The multi-workflow scheduling optimization model only considers the data transmission time between nodes, not the data transmission time between individual virtual machines in the node, and does not consider bandwidth capacity allocation. It only considers the impact of bandwidth size on data transmission time. In the multi-workflow scheduling optimization model, computing resources are mainly provided by virtual machines. Each computing node can provide multiple types of virtual machines. Virtual machines are represented by the set Indicates, where h represents the number of virtual machines, and each virtual machine is configured with two resources to be allocated: CPU and memory.
[0029] Preferably, the encoding scheme is: In order to express the scheduling scheme of multi-workflow tasks, the container and the virtual machine are represented by two integer strings<U,V> The length of each string is equal to the sum of the number of all subtasks of all workflows. The index of each bit in the string corresponds to each subtask. The value of each bit in U represents the container type corresponding to the subtask. The value of the element in V represents the index of the virtual machine that executes the subtask. Each code represents a solution to the multi-workflow scheduling optimization model.
[0030] Preferably, a fragment linear chaotic map is used to generate the initialization code so that the initial solution is evenly distributed in the solution space.
[0031] Preferably, the container and virtual machine dynamic allocation algorithm first traverses all containers in the virtual machine and adds all containers that meet the judgment criteria to a list, then calculates the running time of the current task under each container configuration, and selects the container configuration corresponding to the earliest completion time.
[0032] Preferably, the container and virtual machine dynamic allocation algorithm uses the similarity ranking preference technique TOPSIS of ideal solutions to select the most suitable virtual machine to meet the optimization goal.
[0033] Preferably, the enhanced multi-objective African vulture algorithm calls the container and virtual machine dynamic allocation algorithm to evaluate the optimization target value of each vulture individual, and uses an adaptive grid mechanism to delete redundant solutions in the archive set during each iteration, and outputs the archive set storing the solutions of the multi-workflow scheduling optimization model after reaching the maximum number of iterations.
[0034] Compared with the prior art, the present invention has the following beneficial effects:
[0035] The present invention proposes a multi-workflow scheduling optimization method in a cloud-edge environment based on a container. By establishing a multi-workflow scheduling optimization model in a cloud-edge environment, and proposing a new enhanced multi-objective African vulture algorithm for solving the model, it can effectively deal with multiple optimization objectives in a two-layer architecture composed of virtual machines and containers. In the algorithm, an appropriate coding scheme is given and a dynamic allocation algorithm for containers and virtual machines is proposed based on the coding scheme to optimize the resource allocation and service deployment of containers and virtual machines. The archiving mechanism and adaptive grid mechanism of the algorithm can solve the problems of slow convergence speed of heuristic algorithms and easy falling into local optimality to a certain extent. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] Figure 1 It is a flowchart of a multi-workflow scheduling optimization method in a container-based cloud-edge environment of the present application;
[0037] Figure 2 It is a schematic diagram of a multi-workflow scheduling optimization model in a container-based cloud-edge environment in Example 2 of the present application;
[0038] Figure 3 This is a Pareto front comparison result diagram of different algorithms on Montage in Example 3 of the present application;
[0039] Figure 4 is a Pareto front comparison result diagram of different algorithms on CyberShake in Example 3 of the present application;
[0040] Figure 5 This is a Pareto front comparison result diagram of different algorithms on Inspiral of Example 3 of the present application. DETAILED DESCRIPTION
[0041] In order to more clearly understand the above-mentioned purpose, features and advantages of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present application and the features in the embodiments can be combined with each other without conflict.
[0042] In the following description, many specific details are set forth to facilitate a full understanding of the present invention. However, the present invention may also be implemented in other ways different from those described herein. Therefore, the protection scope of the present invention is not limited to the specific embodiments disclosed below.
[0043] Example 1
[0044] See also Figure 1 Embodiment 1 of the present invention provides a multi-workflow scheduling optimization method in a container-based cloud-edge environment, comprising the following steps:
[0045] S1: Establish a multi-workflow scheduling optimization model in a container-based cloud-edge environment based on the execution relationship of the workflow.
[0046] Microservice task loading in a cloud-edge environment can be viewed as loading tasks in multiple workflows onto two layers of computing resources, containers and virtual machines, with different processing capabilities.
[0047] By adding two dummy tasks with zero execution and communication cost, and then connecting the entry and exit tasks of the independent workflows, multiple workflows can be treated as one workflow. Indicates that Represents the total number of single workflows. The workflow structure is represented by a directed acyclic graph DAG, and the formula is expressed as in represents the set of tasks in a workflow, Represents task t i and t j The priority constraints and data transmission direction between them. Usually, tasks are represented as nodes and the relationships between them are represented as directed edges. Each task can be represented by a tuple express. Represents task t i The set of all predecessor tasks, Represents task t i The set of all post-tasks of i Indicates t i To t j The size of the output data. Tasks without predecessor tasks and tasks without successor tasks are represented as entry tasks t O and export task tF .
[0048] The present invention takes into account the situation where the task is executed on the user device. represents a user device set, where y is the number of user device units. In this embodiment 1, the cloud-edge environment consists of a cloud computing node, multiple edge computing nodes, and multiple user computing nodes. To represent the set of all nodes, where m is the number of nodes. In this embodiment, all edge computing nodes and cloud computing nodes form a fully connected topology. The user node is a special edge node. We only consider the data transmission time between nodes, and do not consider the data transmission time between individual virtual machines in the node. Bandwidth capacity allocation is not considered, only the impact of bandwidth size on data transmission time is considered. Therefore, B is used to represent the bandwidth between two different computing nodes. In the model, computing resources are mainly provided by virtual machines, and containers on virtual machines deploy microservice instances. Each computing node can provide multiple types of virtual machines. The virtual machines used by the system are represented by the set , where h is the number of virtual machines. Each virtual machine is configured with two resources to be allocated: CPU and memory. The vector R l,j Represents virtual machine v l,j All available resources on the virtual machine, including occupied and remaining resources. l,j The occupied and remaining resources are represented by vectors and Indicates. Use ms i,j Represents the jth instance of the i-th microservice.
[0049] S2: Determine an optimization target based on the multi-workflow scheduling optimization model, establish a coding scheme, and generate an initialization code according to the coding scheme.
[0050] In order to better solve practical needs, some key considerations in actual cloud computing task scheduling are referred to to determine the optimization goals.
[0051] The optimization objectives include the completion time of the workflow, the energy consumption of the total workflow, and the carbon emissions.
[0052] Calculate the completion time of the workflow, expressed as formula (1):
[0053]
[0054] in It indicates the completion time of the workflow's exit task.
[0055] Calculate the energy consumption of the total workflow, expressed as formula (2):
[0056]
[0057] in It represents the energy consumption of the virtual machine when it is working. It represents the energy consumption of the virtual machine when it is idle. It represents the transmission energy consumption between two computing nodes, and E represents the computing energy consumption of the user equipment.
[0058] Calculate carbon emissions, expressed as formula (3)
[0059] CarbonEmission = Energy × Q(τ) (3)
[0060] Among them, Q(τ) represents the unit carbon emissions of different energy sources, which are divided into unit carbon emissions of renewable energy and non-renewable energy.
[0061] Finally, the overall optimization objective is expressed as formula (4)
[0062] Minimize:Makespan,CarbonEmission(4)
[0063] Determine the coding scheme: Due to the complexity of the two-layer structure composed of containers and virtual machines in the cloud-edge environment, the present invention decides to use a multi-objective African vulture algorithm to achieve the satisfaction of the optimization goal. The use of the multi-objective African vulture algorithm requires encoding the solution to the problem, and the existing coding scheme cannot fully express the solution of the model established in this embodiment, so the coding scheme of the present invention is proposed:
[0064] Containers and VMs are represented by two integer strings.<U,V> Encoding, the length of each string is equal to the sum of all subtasks of all workflows, the index of each bit in the string corresponds to each subtask, the value of each bit in U represents the container type corresponding to the subtask, the value of the element in V represents the index of the virtual machine that executes the subtask, and each code represents a solution of the multi-workflow scheduling optimization model. Therefore, the quality of the initial solution will affect the operation effect of the algorithm. The initial solution can be evenly distributed in the solution space, which is conducive to the development and exploration of the solution space, i.e., the vulture population, in the subsequent process, so the fragment linear chaos diagram is used to generate the initial code, i.e., the initial solution, so that the initial solution is evenly distributed in the solution space.
[0065] S3: Create a container and virtual machine dynamic allocation algorithm according to the optimization goal and the encoding scheme.
[0066] There are two problems in scheduling multiple workflows in a two-layer structure composed of containers and virtual machines in a cloud-edge environment: The first is the reuse and allocation of containers: Since there are many types of containers, it takes time to pull and create container images. If containers of the same category can be reused while meeting constraints, the time for pulling and creating containers can be effectively saved. However, the reuse of containers may generate resource waiting time, so containers need to be reused dynamically. The second problem is that in a two-layer architecture, due to the different resource configurations of the two layers, the virtual machine resources initially specified may not meet the container resource requirements, resulting in an infeasible solution. At this time, it is necessary to reselect virtual machines with sufficient resources for these containers. In order to enable the multi-objective African vulture algorithm to solve these two problems, a container and virtual machine dynamic allocation algorithm is proposed to improve the multi-objective African vulture algorithm.
[0067] When deploying containers on a virtual machine, it takes some time to call up and start the container image. Therefore, a container reuse mechanism is needed. First, it checks whether there is a container of the same type as the current scheduling in the virtual machine. If so, compare their task completion times. This has two advantages. First, it saves container startup time. Second, from a global perspective, the algorithm considers the impact of the current container configuration on subsequent tasks when making decisions. This makes a good trade-off between resource usage and computing speed. The algorithm first traverses all containers in the virtual machine and adds all eligible containers to a list. Secondly, it calculates the running time of the current task under each container configuration and selects the container configuration corresponding to the earliest completion time.
[0068] In a two-tier architecture, due to the different resource configurations of the two tiers, virtual machine resources may be insufficient compared to container resource requirements. This requires reselecting virtual machines with sufficient resources for these containers. In addition, in order to quickly find a high-quality solution, the similarity ranking preference technique of ideal solutions, TOPSIS, is used to select the most suitable virtual machine to achieve the optimal optimization goal. TOPSIS is a multi-criteria decision-making method. It can find the solution that is closest to the ideal solution and farthest from the worst solution. First, a decision matrix containing h candidate virtual machines and q optimization objectives is defined, where x ij represents the jth optimization target value when the task is deployed to candidate i. The decision matrix is expressed as formula (5)
[0069]
[0070] Then the decision matrix is normalized, and the ideal solution and negative solution are selected, and the Euclidean distance between each alternative and the ideal solution and the negative ideal solution is calculated. Finally, the relative closeness of each alternative to the ideal solution is obtained according to formula (6). The optimal solution is selected based on this closeness.
[0071]
[0072] After the above steps, a dynamic matching algorithm for containers and virtual machines is created:
[0073] The input parameters of the algorithm are container resource requirements Container type requirements Ctype and initial virtual machine v j ; Create a new container Cnew based on the input parameters. If the task is scheduled to the total amount of resources R of the virtual machine l,j Greater than the resource requirements of Cnew Then loop through all the containers that have been created on the virtual machine and create a container list CON_LIST, determine whether the type of the traversed container is the container type requirement Ctype, and if so, add it to the container list CON_LIST; if the container list CON_LIST is not empty after the above traversal, it means that the current virtual machine has created containers of the same type, then loop through all the containers in the CON_LIST list, calculate and record the earliest task completion time after the task is deployed to the corresponding container and the corresponding container number; after the traversal is completed, select the corresponding container with the smallest earliest task completion time value as the final container deployment plan; if the task is scheduled to the total resource R of the virtual machine l,j Less than the resource requirements of Cnew Then create a new list VM_LIST and put all the total resources R l,j Greater than container resource requirements The virtual machines are added to the list VM_LIST, and the virtual machines in VM_LIST are traversed in a loop. The target value is calculated for each traversed virtual machine according to formulas (1) and (3); after the traversal, the TOPSIS algorithm is used to select the optimal virtual machine. Finally, the algorithm returns two values, one is the final container deployment plan for the current task, and the other is the final virtual machine deployment plan, which redistributes containers and virtual machines.
[0074] The pseudo code flow of the dynamic matching algorithm for containers and virtual machines is as follows:
[0075]
[0076]
[0077] S4: creating an enhanced multi-objective African vulture algorithm including an archiving mechanism and an adaptive grid mechanism according to the optimization goal, the encoding scheme, and the container and virtual machine dynamic allocation algorithm.
[0078] According to steps S1-S3, an enhanced multi-objective African vulture algorithm RMOAVOA is created:
[0079] The input of the algorithm is: population size N, maximum number of iterations maxiteration, leader selection pressure parameter beta, archive set overflow member selection pressure parameter gamma, iteration number g=0; first, a group of candidate solutions (called "vultures") are randomly generated, and each vulture represents a possible solution; at the same time, parameters such as population size Vi (i=1,2,…,N), maximum number of iterations maxiteration and dimension of objective function need to be set; call Algorithm 1 (container and virtual machine dynamic allocation algorithm) to evaluate the target value of each vulture individual, obtain non-dominated solutions, establish archive sets and find leader individuals; then enter iteration, and in each round of iteration, assign the optimal solution in the population, that is, the optimal vulture individual, to BestVulture1; the suboptimal solution is assigned to Bes tVulture2; then traverse each individual in the population and update the hunger degree of each individual. If the hunger degree of the individual is greater than or equal to one, perform the exploration operation; if the hunger degree of the individual is less than one, perform the exploitation operation; in one round of iteration, after traversing all the populations, it is necessary to evaluate the target values of all individuals, obtain all non-dominated solutions in the population, and add the newly found non-dominated solutions to the archive set Archive; if the number of solutions stored in the archive set reaches the limit value (the archive set is full), call the adaptive grid mechanism to delete the redundant solutions in the archive set and add the new solutions to the archive set. At the same time, if any of the newly added solutions is outside the range of the hypercube, perform an update grid operation; after a specified number of iterations, the algorithm finally returns the final archive set Archive.
[0080] The pseudo code flow of the enhanced multi-target African vulture algorithm is as follows:
[0081]
[0082]
[0083] S5: Based on the initialization code, the enhanced multi-objective African vulture algorithm is applied to solve the multi-workflow scheduling optimization model.
[0084] Example 2
[0085] Based on Example 1, this Example 2 further illustrates a multi-workflow scheduling optimization model in a container-based cloud-edge environment in Example 1, as follows:
[0086] See also Figure 2 , Figure 2 This is a schematic diagram of a multi-workflow scheduling optimization model in a container-based cloud-edge environment of this embodiment 2.
[0087] The first user layer is the user device layer, where user devices generate various task requests.
[0088] In the present invention, the task request of each user device is modeled as a workflow, and the requests of multiple user devices form multiple workflows to be scheduled. Each workflow to be scheduled includes several subtasks, namely the second layer workflowlayer workflow layer.
[0089] Each workflow subtask can be executed locally or scheduled to a container-based cloud edge environment. If a task is scheduled to a container-based cloud edge environment, a container category will be assigned to each task. After the task is scheduled, a container instance (microservice instance) will be created on the virtual machine according to the container category. These container instances constitute the microservice instance layer (container layer).
[0090] Container instances are deployed on virtual machines, and all virtual machines constitute the virtual machine layer.
[0091] Virtual machines are divided into virtual machines deployed at cloud computing nodes and virtual machines deployed at edge computing nodes, which abstracts the edge layer and cloud layer.
[0092] Example 3
[0093] Based on Example 1, this Example 3 applies a multi-workflow scheduling optimization method in a container-based cloud-edge environment in Example 1 to evaluate the performance of the enhanced multi-objective African vulture algorithm RMOAVOA of the present invention and compares it with three benchmark algorithms, as follows:
[0094] Three real-world workflow applications are selected to simulate multiple microservice workflows, including Montage, CyberShake, and Inspiral.
[0095] For the discussed edge-cloud computing scenario, a small-scale workflow was selected as the workflow instance, and one cloud computing node and seven edge computing nodes were set. In this work, the bandwidth between nodes was randomly set from {500, 800, 1000, 1500} Mbps. Then, the communication distance delay between edge computing nodes was taken from {100, 200, 300, 400} ms. Since the cloud computing nodes are far away, the communication delay between cloud computing nodes and edge computing nodes is randomly taken from {500, 600, 700, 800} ms. Users are regarded as special edge nodes for calculating delay.
[0096] In addition, each computing node is equipped with green energy collection and storage devices. Cloud computing nodes can collect 2 to 20 joules of green energy per second, while edge computing nodes can collect 1 to 10 joules of green energy per second. The carbon emissions of green energy and grid energy are set to 53 and 968 grams of carbon dioxide equivalent per kilowatt-hour, respectively. The relevant virtual machine configurations in the cloud-edge environment are detailed in Table 1. In order to simulate the expansion of resources at the container level, Table 2 gives the configuration parameters of the container.
[0097] Table 1: Virtual machine settings in edge environment
[0098]
[0099] Table 2: Container settings for edge environments
[0100] Container Type vCPU Memory(GB) cc(.) 1 4 16 1.0 2 2 8 1.6 3 1 4 2.2 4 0.5 2 2.8 5 0.25 1 3.4
[0101] Here, cc(.) represents the execution time weight of different container rankings, and containers with more resources have smaller weights. In addition, the task running time recorded by workflow tracking is regarded as the benchmark of task execution time. Table 3 gives the configuration parameters of RMOAVOA.
[0102] Table 3: Algorithm related configuration parameter settings
[0103]
[0104] To measure the performance of the RMOAVOA algorithm, we compared it with the following algorithms.
[0105] The MOGWO algorithm is inspired by the social hierarchy and hunting behavior of gray wolves. The algorithm uses position updates and dynamic search mechanisms, aiming to converge to the optimal solution efficiently.
[0106] The MOBAN algorithm is inspired by the echolocation behavior of bats. Bats dynamically adjust their positions based on the best solution found so far. The algorithm combines randomness and local search techniques to effectively optimize the objective function.
[0107] The MOSPO algorithm is built on the principles of color theory, color wheel, and color combination methods. It achieves effective exploration and utilization through four simple color combination rules, eliminating the need for internal parameters.
[0108] To compare the performance of different algorithms more intuitively, we generated different directed acyclic graph applications and ran different algorithms to generate the Pareto front. Figures 3 to 5The Pareto front comparison results of each algorithm are given in . Among them, the x-axis represents the completion time and the y-axis represents the carbon emissions. It can be seen from the figure that the Pareto front generated by the RMOAVOA of the present invention is better than other algorithms. The RMOAVOA algorithm can find a large range of non-dominated solutions and can meet various needs. Compared with the Pareto front generated by RMOAVOA, other algorithms cannot explore solutions when solving the complex structural problems in this article. However, the solutions obtained by the three compared algorithms are concentrated in a specific area, which shows their diversity. In general, the RMOAVOA algorithm proposed in the present invention has better performance.
[0109] Obviously, the above embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the embodiments of the present invention. For those skilled in the art, other different forms of changes or modifications can be made based on the above description. It is not necessary and impossible to list all the embodiments here. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the claims of the present invention.
Claims
1. A multi-workflow scheduling optimization method in a container-based cloud-edge environment, characterized in that: The steps include: According to the execution relationship of workflows, a multi-workflow scheduling optimization model in a container-based cloud-edge environment is established; Determine an optimization target based on the multi-workflow scheduling optimization model, establish a coding scheme, and generate an initialization code according to the coding scheme; Creating a container and virtual machine dynamic allocation algorithm based on the optimization goal and encoding scheme; Creating an enhanced multi-objective African vulture algorithm including an archiving mechanism and an adaptive grid mechanism according to the optimization goal, the encoding scheme, and the container and virtual machine dynamic allocation algorithm; Based on the initialization code, the enhanced multi-objective African vulture algorithm is applied to solve the multi-workflow scheduling optimization model.
2. According to the multi-workflow scheduling optimization method in a container-based cloud-edge environment according to claim 1, it is characterized in that: The multi-workflow scheduling optimization model includes: a user layer, a workflow layer, a microservice instance layer, a virtual machine layer, an edge layer, and a cloud layer; The user layer includes multiple user devices, generating various task requests; The workflow layer includes multiple workflows to be scheduled formed by task requests of multiple user devices, and each workflow to be scheduled includes several subtasks; The microservice instance layer includes a container instance, i.e., a microservice instance, created on a virtual machine according to a container type assigned to a subtask; The virtual machine layer includes all virtual machines; The edge layer is abstracted from the virtual machine deployed on the edge computing node and is used for edge computing; The cloud layer is abstracted from virtual machines deployed on cloud computing nodes and is used for cloud computing.
3. According to the method for optimizing multi-workflow scheduling in a container-based cloud-edge environment according to claim 2, it is characterized in that: The structure of the workflow to be scheduled is represented by a directed acyclic graph, and the formula is expressed as follows: in represents the set of tasks in a workflow, Represents task t i and t j Priority constraints and data transfer directions between the tasks, each task set is represented by a tuple express, Represents task t i The set of all predecessor tasks of Represents task t i The set of all post-tasks of i Indicates t i To t j The size of the output data, the tasks without predecessor tasks and without successor tasks are respectively represented as entry tasks t O and export task t F .
4. According to the method for optimizing multi-workflow scheduling in a container-based cloud-edge environment according to claim 3, it is characterized in that: The optimization objectives include the completion time of the workflow, the energy consumption and carbon emissions of the total workflow; The completion time of the workflow includes the completion time of the export task; The energy consumption of the total workflow includes the energy consumption of the virtual machine when it is working, the energy consumption of the virtual machine when it is idle, the transmission energy consumption between two computing nodes, and the computing energy consumption of the user device; The carbon emissions include carbon emissions from renewable energy and non-renewable energy.
5. According to the method for optimizing multi-workflow scheduling in a container-based cloud-edge environment according to claim 1, it is characterized in that: The container-based cloud-edge environment includes a cloud computing node, multiple edge computing nodes, and multiple user computing nodes. represents the set of all nodes, where m is the number of all computing nodes. All edge computing nodes and cloud computing nodes form a fully connected topology. User computing nodes are special edge computing nodes. The multi-workflow scheduling optimization model only considers the data transmission time between nodes, not the data transmission time between individual virtual machines in the node, and does not consider bandwidth capacity allocation. It only considers the impact of bandwidth size on data transmission time. In the multi-workflow scheduling optimization model, computing resources are mainly provided by virtual machines. Each computing node can provide multiple types of virtual machines. Virtual machines are represented by the set Indicates, where h represents the number of virtual machines, and each virtual machine is configured with two resources to be allocated: CPU and memory.
6. According to the method for optimizing multi-workflow scheduling in a container-based cloud-edge environment according to claim 2, it is characterized in that: The encoding scheme is: In order to express the scheduling scheme of multi-workflow tasks, containers and virtual machines are represented by two integer strings<U,V> The length of each string is equal to the sum of the number of all subtasks of all workflows. The index of each bit in the string corresponds to each subtask. The value of each bit in U represents the container type corresponding to the subtask. The value of the element in V represents the index of the virtual machine that executes the subtask. Each code represents a solution to the multi-workflow scheduling optimization model.
7. According to the method of claim 6, a multi-workflow scheduling optimization method in a container-based cloud-edge environment is characterized in that: The fragment linear chaotic graph is used to generate the initialization code, so that the initial solution is evenly distributed in the solution space.
8. According to the method for optimizing multi-workflow scheduling in a container-based cloud-edge environment according to claim 1, it is characterized in that: The container and virtual machine dynamic allocation algorithm first traverses all containers in the virtual machine and adds all containers that meet the judgment criteria to the list, then calculates the running time of the current task under each container configuration and selects the container configuration corresponding to the earliest completion time.
9. According to the method of optimizing multi-workflow scheduling in a container-based cloud-edge environment of claim 8, it is characterized in that: The container and virtual machine dynamic allocation algorithm uses the similarity ranking preference technique TOPSIS of ideal solutions to select the most suitable virtual machine to meet the optimization goal.
10. The multi-workflow scheduling optimization method in a container-based cloud-edge environment according to claim 1 is characterized in that: The enhanced multi-objective African vulture algorithm calls the container and virtual machine dynamic allocation algorithm to evaluate the optimization target value of each vulture individual, and uses an adaptive grid mechanism to delete redundant solutions in the archive set during each iteration. After reaching the maximum number of iterations, the archive set storing the solution of the multi-workflow scheduling optimization model is output.
Citation Information
Patent Citations
Container-based micro-service workflow security scheduling method in heterogeneous cloud environment
CN116560812A
Flexible workshop production scheduling method based on improved African vulture optimization algorithm
CN116911517A
Cloud computing task scheduling system and method based on multi-target grey wolf optimization
CN117076100A
Multi-target task scheduling method and system
CN117762589A
Cloud computing task scheduling method of multi-strategy fusion improved Harris eagle algorithm
CN118779116A