Container scheduling method and device, electronic equipment and storage medium
By obtaining and analyzing the container resource usage information of the embedded operating system of the power control system, calculating the container similarity and generating a scheduling plan, the rationality of container resource allocation in the embedded operating system is solved, and resource utilization efficiency and system stability are improved.
Patent Information
- Application Number
- CN202510555207.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-29
- Publication Date
- 2025-08-15
AI Technical Summary
How to efficiently schedule containers in power control systems, especially in embedded operating systems to reasonably allocate resources to cope with the volatility and uncertainty of grid load.
By obtaining the system resource usage information of the target operating system, determining the container operation data, calculating the container similarity and generating a similarity matrix, the container scheduling scheme is generated based on this to reasonably allocate resources.
The container resources of the embedded operating system are rationally allocated in the power control system, improving resource utilization efficiency and system performance, and ensuring stability and reliability under different load conditions.
Smart Images

Figure CN120492086A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the field of computer technology, and in particular to a container scheduling method, device, electronic device, and storage medium. Background Art
[0002] As one of the fundamental infrastructures of modern society, power control systems bear the brunt of the national economy and people's livelihoods. With the rapid development of smart grids and the energy internet, grid load volatility and uncertainty are increasing, necessitating an increasingly urgent need for dynamic load scheduling and optimized regulation in power control systems. Embedded operating systems (OSs) perform crucial tasks in power control systems, including real-time monitoring, data acquisition, load forecasting, and intelligent scheduling. However, with the rapid growth of grid loads and increasing system complexity, efficiently scheduling containers in power control systems has become a core technical challenge that needs to be addressed. Therefore, a container scheduling method is proposed to rationally and effectively schedule containers in embedded operating systems used in power control systems. Summary of the Invention
[0003] The present invention provides a container scheduling method, device, electronic equipment and storage medium to achieve reasonable allocation of resources of an embedded operating system for a power control system.
[0004] According to one aspect of the present invention, a container scheduling method is provided, the method comprising:
[0005] Obtaining system resource usage information of a target operating system having a plurality of application containers installed thereon, and determining container operation data of each of the application containers; wherein the target operating system is an embedded operating system for a power control system;
[0006] determining a container similarity between any two application containers according to the system resource usage information and each container operation data, and obtaining a container similarity matrix based on the container similarities;
[0007] Obtaining a target resource pre-allocation amount for each application container in the target operating system according to the container similarity matrix;
[0008] A container scheduling scheme is generated based on the target resource pre-allocation amount of each application container, so as to schedule the application container in the target operating system based on the container scheduling scheme.
[0009] According to another aspect of the present invention, a container scheduling device is provided. The device includes:
[0010] a data acquisition module, configured to acquire system resource usage information of a target operating system having a plurality of application containers installed thereon, and determine container operation data of each of the application containers; wherein the target operating system is an embedded operating system for a power control system;
[0011] a similarity calculation module, configured to determine the container similarity between any two application containers based on the system resource usage information and each container operation data, and obtain a container similarity matrix based on the container similarity;
[0012] a resource allocation module, configured to obtain a target resource pre-allocation amount for each application container in the target operating system according to the container similarity matrix;
[0013] The container scheduling module is configured to generate a container scheduling scheme based on the target resource pre-allocation amount of each application container, so as to schedule the application container in the target operating system based on the container scheduling scheme.
[0014] According to another aspect of the present invention, an electronic device is provided, comprising:
[0015] at least one processor; and
[0016] a memory communicatively connected to the at least one processor; wherein,
[0017] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the container scheduling method described in any embodiment of the present invention.
[0018] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the container scheduling method according to any embodiment of the present invention when executed.
[0019] The technical solution of the embodiment of the present invention determines the container operation data of each application container by obtaining the system resource usage information of the target operating system on which multiple application containers are installed; wherein the target operating system is an embedded operating system for a power control system; the container similarity of any two application containers is determined based on the system resource usage information and the operation data of each container, and a container similarity matrix is obtained based on the container similarity; the target resource pre-allocation amount of each application container in the target operating system is obtained based on the container similarity matrix. This technical solution realizes a more reasonable allocation of resources for the embedded operating system for the power control system. Then, a container scheduling scheme is generated based on the target resource pre-allocation amount of each application container, so as to schedule the application containers in the target operating system based on the container scheduling scheme. The technical solution of the embodiment of the present invention realizes reasonable and effective scheduling of containers in the embedded operating system for the power control system.
[0020] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present invention, nor is it intended to limit the scope of the present invention. Other features of the present invention will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0022] Figure 1 A flowchart of a container scheduling method provided by an embodiment of the present invention;
[0023] Figure 2 A flowchart of a container scheduling method provided by an embodiment of the present invention;
[0024] Figure 3 A schematic diagram of the structure of a container scheduling device provided by an embodiment of the present invention;
[0025] Figure 4 A schematic structural diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0026] In order to enable those skilled in the art to better understand the solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the embodiments described are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of the present invention.
[0027] It should be noted that the terms "first", "second", etc. in the description and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0028] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) must comply with the requirements of relevant laws, regulations and relevant provisions.
[0029] Figure 1 This is a flow chart of a container scheduling method provided by an embodiment of the present invention. This embodiment is applicable to the case of pre-allocating resources according to application containers in an embedded operating system. The method can be executed by a container scheduling device, which can be implemented in the form of hardware and / or software. The container scheduling device can be configured in an electronic device such as a computer or server. Figure 1 As shown, the method of this embodiment includes:
[0030] S110: Obtain system resource usage information of a target operating system having multiple application containers installed thereon, and determine container running data of each of the application containers.
[0031] In an embodiment of the present invention, the target operating system may be an embedded operating system for a power control system. The application container may be obtained by containerizing an application installed in the target operating system. System resource usage information may be understood as usage information of system resources used by application containers in the target operating system. In an embodiment of the present invention, the system resource usage information may include CPU usage information, memory usage information, disk usage information, and network usage information, etc. In an embodiment of the present invention, there are multiple ways to obtain system resource usage information of a target operating system with multiple application containers installed. For example, the system resource usage information of a target operating system with multiple application containers installed may be obtained in real time; or the system resource usage information of a target operating system with multiple application containers installed may be collected according to a preset period or time interval.
[0032] In embodiments of the present invention, container operation data may include container resource usage data, container resource occupancy data, and container detailed data. Container resource usage data may include resource usage data for the container, such as CPU, memory, network, and disk. Container resource occupancy data may include CPU usage data, memory usage data, and resource occupancy time. Container detailed data may include container configuration, network, mounted volumes, and environment variables.
[0033] In an embodiment of the present invention, after obtaining the system resource usage information and the container operation data, it may also include: performing data preprocessing on the system resource usage information and the container operation data respectively, wherein the data preprocessing may include outlier removal processing and / or data normalization processing.
[0034] S120: Determine container similarity between any two application containers according to the system resource usage information and each container operation data, and obtain a container similarity matrix based on the container similarities.
[0035] Among them, container similarity can be understood as the similarity between two application containers in the target operating system. Container similarity can be used to determine the degree of similarity between different application containers. The container similarity matrix can be a matrix generated based on the similarity between different application containers in the target operating system. In an embodiment of the present invention, determining the container similarity of any two application containers based on the system resource usage information and each container operation data may include: obtaining a container resource profile of each application container based on the system resource usage information and each container operation data; and then determining the container similarity of the two application containers based on the container resource profiles of any two application containers.
[0036] The container resource profile can be a model or view used to describe the characteristics of container resource usage. In embodiments of the present invention, the correspondence between containers and container resource profiles can be one-to-one. In other words, one container corresponds to one container resource profile. In embodiments of the present invention, the required resources can be more accurately allocated to the container based on the container resource profile, avoiding resource waste and over-allocation. Furthermore, as the container load changes, the resource profile can also determine resource usage trends, thereby dynamically adjusting resource allocation to ensure efficient resource utilization.
[0037] Optionally, obtaining the container resource profile of each application container based on the system resource usage information and the operating data of each container may include: adopting a decision tree algorithm to obtain the container resource profile of each application container based on the system resource usage information and the operating data of each container.
[0038] In an embodiment of the present invention, a decision tree algorithm is used to obtain a container resource profile of each application container based on the system resource usage information and the operation data of each container. The specific steps are as follows:
[0039] First, feature extraction can be performed on the system resource usage information and the operation data of each container to obtain the CPU usage mean, CPU usage variance, memory usage mean, memory usage variance, storage I / O rate mean, storage I / O rate variance, network bandwidth mean, network bandwidth variance, container power load mean, container power load variance, container operation time, and peak load time period. After obtaining the features obtained based on the feature extraction, the input feature X can be formed based on the features obtained by the feature extraction. i In an embodiment of the present invention, resource utilization rate can be used as a target variable. Alternatively, resource utilization rate can be used as a target variable by the following formula:
[0040]
[0041] Among them, RUE i It can be expressed as the overall resource utilization of application container i on all resources. It can be expressed as the ratio of CPU resources used by application container i in a certain period of time. It can be expressed as the proportion of memory resources used by application container i in a certain period of time. It can be expressed as the ratio of memory resources used by application container i in a certain period of time. It can be expressed as the network bandwidth usage of application container i in a certain period of time. It can be expressed as the ratio of the power demand of application container i to the total power in a certain period of time.
[0042] Based on this, feature selection can be performed on the dataset. Specifically, this can include: selecting the feature with the maximum gain based on the calculated Gini index and Gini index gain to split the dataset. The dataset can be obtained based on the system resource usage information and the operating data of each container. In other words, the dataset can include the system resource usage information and the operating data of each container.
[0043] Alternatively, the Gini index can be calculated using the following formula:
[0044]
[0045] Among them, p i It can be expressed as the proportion of samples belonging to category i in the dataset D. k can be expressed as the total number of categories.
[0046] Optionally, for each feature j, the Gini index gain after splitting can be calculated by the following formula:
[0047]
[0048] Among them, D can be expressed as the data set of the current node. v It can be expressed as a data subset when feature j takes the value v. |D v | and |D| can be represented as dataset D and subset D respectively. v The number of samples.
[0049] Based on this, the Gini index gain can be calculated, and the feature j and splitting point t with the maximum Gini index gain can be selected. The dataset D can then be split based on the selected feature j and splitting point t to generate left and right child nodes. After obtaining the left and right child nodes, the feature selection steps can be repeated for the left and right child nodes until the Gini index gain cannot be further improved. This results in a decision tree. The decision tree includes multiple decision tree nodes, each of which can contain the following information: splitting feature, splitting threshold, left child node, right child node, number of node samples, and the node's Gini index.
[0050] Specifically, after obtaining the decision tree, the decision tree can be pruned. The cost complexity can be calculated using the following formula:
[0051] R α (T)=R(T)+α|T|
[0052] Among them, R(T) can be expressed as the training error of decision tree T; |T| can be expressed as the number of leaf nodes of decision tree T; α can be expressed as a complexity parameter, which controls the size of the number.
[0053] After pruning the decision tree, subtrees can be generated. It is understood that for different α values, a series of nested subtrees can be generated. After obtaining multiple subtrees, the optimal pruning parameters can be selected. In embodiments of the present invention, k-fold cross-validation can be used to select the optimal α value. This results in a final pruned decision tree. A resource profile for the container can then be generated based on the pruned decision tree.
[0054] In an embodiment of the present invention, through comprehensive feature extraction, feature selection based on the Gini index, decision tree algorithm and pruning technology, the resource utilization of the container can be comprehensively evaluated and the resource scheduling strategy can be optimized. By calculating the overall resource utilization (RUE) and accurately selecting key features, the system can identify the resource requirements of the container, reduce redundant features, and improve decision-making efficiency. The construction of the decision tree not only enhances the interpretability of resource scheduling, but also avoids overfitting through pruning and improves the generalization ability of the model. Finally, a resource portrait of the container is generated based on the pruned decision tree, which provides a clear view for resource management, supports intelligent scheduling and optimization, and ensures efficient utilization of container resources and improved system performance.
[0055] In an embodiment of the present invention, determining the container similarity of any two application containers based on the container resource portraits of the two application containers may include: constructing container feature vectors of the two application containers based on container resource usage feature information in the container resource portraits of the any two application containers; and then using a cosine similarity algorithm to determine the container similarity of the two application containers based on the feature vectors of the two application containers.
[0056] The number of container resource usage feature information in the container resource profile can be one, two, or more. Optionally, constructing container feature vectors for any two application containers based on the container resource usage feature information in the container resource profiles of the two application containers may include selecting two application containers from all application containers. Subsequently, for each of the two application containers, a container feature vector for the application container may be constructed based on the container resource usage feature information in the container resource profile of the application container.
[0057] Specifically, the container similarity matrix can be obtained through the following steps:
[0058] Step 1: Construct a feature vector. Specifically, construct a feature vector for each application container. The feature vector can include features in six dimensions: CPU usage, memory usage, storage I / O usage, network bandwidth usage, power load usage, and resource usage information during peak and off-peak time periods.
[0059] Step 2: The container similarity between the two application containers can be determined based on the feature vectors of the two application containers using the cosine similarity algorithm using the following formula:
[0060]
[0061] Among them, V a It can be expressed as the characteristic vector of application container a, V b It can be expressed as the eigenvector of the application container b. · represents the vector dot product. ||V|| can be expressed as the Euclidean norm of vector V.
[0062] Based on this, a dynamic regularization algorithm can be introduced to calculate the time series similarity between two application containers:
[0063] DWT distance (a,b)=dtw(T a ,T b )
[0064] Among them, T a It can represent the resource usage time series of application container a. b It can be expressed as the resource usage time series of application container b. dtw() can be expressed as a dynamic regularization algorithm;
[0065] On this basis, the similarity can be calculated using the following formula:
[0066] affinity(a,b)=α×cos similarity (a,b)+(1-α)×(1-norm(DWT distance (a,b)))
[0067] Among them, α can be expressed as a weight parameter, which can be used to characterize the influence of balancing static feature similarity and time series similarity. The value range of α can be [0, 1]. norm() can be expressed as DWT distance (a,b) Normalized to the range of 0 to 1.
[0068] Step 3: Generate a similarity matrix. Specifically, after calculating the similarities between all application container pairs, an m*m similarity matrix A can be constructed, where m can be represented as the total number of application containers.
[0069] Set a similarity threshold. When the value of the similarity matrix A is less than the threshold, set it to 0:
[0070]
[0071] Here, A[i][j] can be expressed as the similarity value between application container i and application container j.
[0072] On this basis, a time-related adjustment factor τ(t i ,t j ), and adjustment is performed based on the similarity between application container i and application container j during peak and off-peak periods of the power grid load. Alternatively, adjustment can be performed based on the similarity between application container i and application container j during peak and off-peak periods of the power grid load using the following formula:
[0073] A′[i][j]=A[i][j]×τ(t i ,t j )
[0074] Among them, τ(t i ,t j ) can be expressed as a similarity adjustment factor based on the application container i and application container j during the peak and valley periods of the grid load.
[0075]
[0076] Among them, r i ·r j Represents the inner product of the application container in a specific period of time. ||r i ||||r j || can be respectively expressed as the modulus length of the container resource vector.
[0077] In an embodiment of the present invention, the resource similarity between containers can be accurately calculated by combining the cosine similarity and the dynamic time warping (DWT) algorithm, and the similarity of the containers in resource usage can be comprehensively evaluated. By constructing a feature vector containing static and time series features, the impact of different time periods (such as peak and trough power grid load) on resource usage can be integrated on the basis of the real-time resource usage information of the application container. By introducing the dynamic warping algorithm, the measurement of time series similarity is improved, and the generation of the container similarity matrix can provide a reliable basis for subsequent container scheduling and optimization. In addition, by setting the similarity threshold and adjustment factor, the container similarity calculation is made more flexible and accurate, which helps to further improve the intelligence level of container scheduling and the efficiency of resource management.
[0078] S130: Obtain a target resource pre-allocation amount for each application container in the target operating system according to the container similarity matrix.
[0079] The target resource pre-allocation amount can be understood as the amount of resources pre-allocated for each application container in the operating system. In embodiments of the present invention, the target resource pre-allocation amounts for different application containers may be the same or different. Specifically, after obtaining the container similarity matrix, the target resource pre-allocation amount for each application container in the target operating system can be obtained based on the container similarity matrix.
[0080] S140: Generate a container scheduling scheme based on the target resource pre-allocation amount of each application container, so as to schedule the application container in the target operating system based on the container scheduling scheme.
[0081] The container scheduling scheme can be understood as a scheme for scheduling application containers in an operating system. The container scheduling scheme can include a target resource pre-allocation amount for each application container and a scheduling order for each application container.
[0082] Specifically, after obtaining the target resource pre-allocation amount based on each application container, a container scheduling scheme can be generated based on the target resource pre-allocation amount of each application container to schedule the application container in the target operating system according to the container scheduling scheme.
[0083] The technical solution of the embodiment of the present invention determines the container operation data of each application container by obtaining the system resource usage information of the target operating system on which multiple application containers are installed; wherein the target operating system is an embedded operating system for a power control system; the container similarity of any two application containers is determined based on the system resource usage information and the operation data of each container, and a container similarity matrix is obtained based on the container similarity; the target resource pre-allocation amount of each application container in the target operating system is obtained based on the container similarity matrix. This technical solution realizes a more reasonable allocation of resources for the embedded operating system for the power control system. Then, a container scheduling scheme is generated based on the target resource pre-allocation amount of each application container, so as to schedule the application containers in the target operating system based on the container scheduling scheme. The technical solution of the embodiment of the present invention realizes reasonable and effective scheduling of containers in the embedded operating system for the power control system.
[0084] Figure 2A flowchart of a container scheduling method provided in an embodiment of the present invention, based on the aforementioned embodiment, optionally, each of the application containers in the target operating system is provided with an initial resource pre-allocation amount; the target resource pre-allocation amount of each application container in the target operating system is obtained according to the container similarity matrix, including: for each application container in the target operating system, adjusting the initial resource pre-allocation amount of the application container according to the container similarity matrix, and obtaining the target resource pre-allocation amount of the application container based on the adjusted resource pre-allocation amount. Among them, the technical features that are the same or similar to those in the above embodiments are not repeated here. Figure 2 As shown, the method of this embodiment specifically includes:
[0085] S210: Obtain system resource usage information of a target operating system having multiple application containers installed thereon, and determine container running data of each of the application containers, wherein each of the application containers in the target operating system is set with an initial resource pre-allocation amount.
[0086] The target operating system is an embedded operating system for a power control system. The initial resource pre-allocation amount can be understood as the amount of resources pre-allocated to each application container in the target operating system.
[0087] In an embodiment of the present invention, the initial resource pre-allocation amount of each application container in the target operating system can be set by the following formula:
[0088] BR(c i )=α×HR(c i )+β×CR(c i )+γ×AR(c i )
[0089] Among them, BR(c i ) can be represented as an application container c i Initial resource pre-allocation amount; HR(c i ) can be represented as an application container c i The historical resource usage peak value; CR (c i ) can be represented as an application container c i Current resource usage; AR(c i ) can be represented as an application container c i The average resource usage of ; α, β, γ represent weight coefficients, and α+β+γ=1.
[0090] S220: Determine container similarity between any two application containers according to the system resource usage information and each container operation data, and obtain a container similarity matrix based on the container similarity.
[0091] S230: For each application container in the target operating system, adjust the initial resource pre-allocation amount of the application container according to the container similarity matrix, and obtain the target resource pre-allocation amount of the application container based on the adjusted resource pre-allocation amount.
[0092] Specifically, for each application container in the target operating system, the initial resource pre-allocation amount of the application container can be adjusted based on the container similarity matrix. This can yield an adjusted resource pre-allocation amount corresponding to the application container. The adjusted resource pre-allocation amount can then be used as the target resource pre-allocation amount for the application container.
[0093] In an embodiment of the present invention, the initial resource pre-allocation amount of the application container may be adjusted according to the container similarity matrix through the following steps:
[0094]
[0095] Among them, DR (c i ) can be represented as an application container c i The dynamic resource pre-allocation amount; δ can be expressed as the similarity influence coefficient. Where 0≤δ≤1; m can be expressed as the total number of application containers in the target operating system.
[0096] On the basis of the above embodiment, the grid load characteristics can also be combined to improve resource utilization efficiency and ensure the stability and reliability of the system under different load conditions. Optionally, the grid load characteristics can be integrated through the following formula:
[0097] TR(c i ,t)=DR(c i )×(1+∈×L(t))
[0098] Among them, TR(c i ,t) represents the application of container c at time t i The adjusted resource pre-allocation amount; L(t) can be expressed as the load prediction factor at time t, which can be calculated based on historical grid load data; ∈ can be expressed as the load influence coefficient, where 0≤∈≤1.
[0099] Based on the above embodiment, a sliding window can be used to smooth the change of the resource pre-allocation amount. Alternatively, the change of the resource pre-allocation amount can be smoothed by the following formula:
[0100]
[0101] Among them, SW R(c i ,t) can be expressed as the container c at time t iThe amount of resource pre-allocation after sliding window smoothing; w(k) can be expressed as the window weight function; W can be expressed as the window size; where 0≤k <W。
[0102] Based on the above embodiment, the resource pre-allocation time granularity can also be adjusted. That is, the resource pre-allocation time granularity can be dynamically adjusted based on the resource usage characteristics of the container and the system load. Optionally, the resource pre-allocation time granularity can be adjusted using the following formula:
[0103] TG(c i )=max(TG min ,min(TG max ,θ×V(SW R(c i ))))
[0104] Among them, TG(c i ) can be represented as an application container c i The resource pre-allocation time granularity of TG min It can be expressed as the minimum allowed time granularity, TG max can be expressed as the maximum allowed time granularity; θ can be expressed as the time granularity adjustment coefficient; V(SW R(c i )) can be expressed as SW R(c i ), characterizing the volatility of resource use.
[0105] Based on the above embodiment, a resource pre-allocation upper limit constraint of the target operating system may be preset, so that the resource pre-allocation amount of the application container may be adjusted based on the resource pre-allocation upper limit constraint.
[0106] Alternatively, the resource pre-allocation upper limit constraint of the target operating system can be expressed by the following formula:
[0107] FR(c i )=min(SW R(c i ),MaxR×Capacity(c i ))
[0108] Among them, FR(c i ) can be represented as an application container c i The target resource pre-allocation amount; MaxR can be expressed as the maximum resource pre-allocation ratio, where 0 <MaxR<1;Capacity(c i ) can be represented as an application container c i resource capacity.
[0109] Based on the above embodiment, to ensure that the total amount of resource pre-allocation for all containers does not exceed the total system resources, global resource balancing can also be performed on the target pre-allocated resources of the application containers in the target operating system. After the global resource balancing process, a dynamic resource pre-allocation scheme can be obtained. Specifically, based on the target resource pre-allocation amount, a dynamic resource pre-allocation scheme is obtained, wherein the dynamic resource pre-allocation scheme includes the target resource pre-allocation amount for each application in the target operating system.
[0110] In this embodiment of the present invention, by dynamically calculating the resource pre-allocation amount for a container and combining it with resource usage data and grid load characteristics, resource utilization efficiency can be effectively improved, ensuring system stability and reliability under varying load conditions. Furthermore, a sliding window technique can be used to smooth changes in resource pre-allocation amounts, further optimizing resource allocation and reducing resource waste. Furthermore, a global resource balancing mechanism can be used to ensure that the total amount of resource pre-allocation for all containers does not exceed the total system resources, promoting the rational allocation and utilization of resources.
[0111] S240: Generate a container scheduling scheme based on the target resource pre-allocation amount of each application container, so as to schedule the application container in the target operating system based on the container scheduling scheme.
[0112] As an optional implementation in an embodiment of the present invention, a dynamic resource pre-allocation scheme for the target operating system can be obtained based on the target resource pre-allocation amount for each application container. Furthermore, based on the dynamic resource pre-allocation scheme and the container priorities of the application containers in the target operating system, a scheduling algorithm can be employed to ensure the performance of high-priority containers while also meeting the needs of low-priority containers, thereby obtaining a preliminary scheduling scheme, i.e., a container scheduling scheme.
[0113] In an embodiment of the present invention, the scheduling algorithm employed can meet the needs of low-priority containers while ensuring the performance of high-priority containers, thereby obtaining a preliminary scheduling solution. The input data for the scheduling algorithm may include a dynamic resource pre-allocation solution, a preset container priority list, and the total system resource capacity. Based on this, the preliminary scheduling solution can be obtained through the following steps:
[0114] Step 1: Classify the application containers in the target operating system. Specifically, a container priority threshold can be established. Application containers in the target operating system can then be grouped based on the container priority threshold. Containers can then be divided into a high-priority group and a low-priority group based on the container priority threshold. It will be appreciated that the high-priority group can include application containers whose container priority exceeds the container priority threshold, i.e., high-priority containers. The low-priority group can include application containers whose container priority is below the container priority threshold, i.e., low-priority containers.
[0115] Step 2: Pre-allocate resources for application containers in the high-priority group using the following formula:
[0116] Allocate(c i )=min(FR(c i ),SystemCapacity×HighPriorityFactor)
[0117] Among them, Allocate(c i ) can be represented as an application container c i The amount of pre-allocated resources; FR(c i ) can be represented as an application container c i The resource requirements of the system; SystemCapacity can be expressed as the total resource capacity available to the system; HighPriorityFactor can be expressed as the ratio of resources used by high-priority containers, which can be a constant less than or equal to 1.
[0118] After pre-allocating resources for the application containers in the high-priority group, the remaining resources in the target operating system may be updated. Specifically, the remaining resources in the target operating system may be updated using the following formula:
[0119] SystemCapacity=SystemCapacity-Allocate(c i )
[0120] Among them, SystemCapacity can be expressed as the total resources of the system. i ) can be represented as resources that have been allocated to high-priority containers.
[0121] Step 3: A weighted round-robin algorithm can be used to allocate remaining resources to low-priority containers. Alternatively, the following formula can be used to allocate remaining resources to low-priority containers:
[0122]
[0123] Among them, w i Can be represented as application container c i It should be noted that the weight of an application container is related to its priority. A larger weight indicates a more important container resource requirement.
[0124] For each low-priority container, do the following:
[0125]
[0126] Among them, Allocate(c i ) can be expressed as representing the application container c i The amount of resources allocated. FR(c i ) represents the application container c i Resource requirements; w i Represents the application container c i The weight of the container; TotalWeight can be expressed as the total weight of all low-priority containers.
[0127] After pre-allocating resources for the application containers in the low-priority group, the remaining resources in the target operating system can be updated. Specifically, the remaining resources in the target operating system can be updated according to the following formula:
[0128] SystemCapacity=SystemCapacity-Allocate(c i )
[0129] In the event that unallocated resources exist, they can be allocated proportionally to containers that are short of resources.
[0130] Optionally, the allocated resources may be determined according to the following formula:
[0131] RemainingResource=SystemCapacity
[0132] Here, RemainingResource can be represented as unallocated remaining resources.
[0133] If there are remaining resources (i.e., RemainingResource > 0), a resource-deficient container set can be obtained. This resource-deficient container set can include resource-deficient application containers. The amount of resources missing from each resource-deficient application container can then be calculated. The remaining resources can then be allocated proportionally based on a preset resource replenishment ratio.
[0134] Alternatively, you can obtain the set of containers with insufficient resources by:
[0135] DeficitContainers={c i |Allocate(c i ) <FR(c i )}
[0136] Among them, DeficitContainers can be represented as a collection of containers with insufficient resource allocation; FR(c i ) represents the application container c i Resource requirements; Allocate(c i) can be expressed as representing the application container c i The amount of resources allocated.
[0137] Optionally, for each resource-deficient container, the amount of resources lacking for each resource-deficient application container may be obtained in the following manner:
[0138] Deficit(c i )=FR(c i )-Allocate(c i )
[0139] Among them, Deficit(c i ) can be represented as an application container c i The amount of missing resources. FR(c i ) represents the application container c i Resource requirements; Allocate(c i ) can be expressed as representing the application container c i Amount of allocated resources
[0140] Optionally, the remaining resources may be allocated according to a preset resource replenishment ratio using the following formula:
[0141]
[0142] Among them, RemainingResource can be represented as the remaining resources that have not been allocated. i ) can be represented as an application container c i The amount of resources that are missing. DeficitContainers can be represented as a collection of containers that have insufficient resources allocated.
[0143] In an embodiment of the present invention, resource allocation can be optimized through a scheduling algorithm based on a dynamic resource pre-allocation scheme, container priority, and system resource capacity, ensuring that the performance requirements of high-priority containers are prioritized while also considering the resource needs of low-priority containers. First, application containers can be divided into high-priority and low-priority groups based on preset priority thresholds. When allocating resources to high-priority containers, sufficient resources can be guaranteed by setting a usage ratio for high-priority containers. Then, by updating the remaining resources, the system uses a weighted round-robin algorithm to allocate resources to low-priority containers. After assigning weights, the allocation can be adjusted based on the container's priority and resource needs. In an embodiment of the present invention, the weighted round-robin algorithm allocates remaining resources based on the weight ratio of each application container, ensuring that low-priority containers receive resources based on their relative importance. This allows for flexible resource allocation, balancing the needs of containers of different priority levels, improving the fairness and efficiency of resource scheduling, and maximizing the utilization of system resources.
[0144] In an embodiment of the present invention, after generating a container scheduling scheme based on the target resource pre-allocation amount of each application container, the method may further include: determining system load information of the target operating system, thereby determining a load imbalance of the target operating system based on the system load information; and then using an improved ant colony algorithm to adjust the container scheduling scheme based on the load imbalance.
[0145] Optionally, the load imbalance degree of the target operating system may be determined according to the following formula:
[0146]
[0147] Among them, L avg It can be expressed as the average load of the target operating system; L t It can be expressed as the load at time point t; Imbalance can be expressed as the degree of load imbalance.
[0148] In an embodiment of the present invention, the objective function of load balancing optimization may be:
[0149] ObjectiveFunction=w1×Imbalance+w2×ResourceUtilization+w3×ContainerPerformance
[0150] Among them, ResourceUtilization can be expressed as resource utilization; ContainerPerformance can be expressed as container performance, that is, the efficiency of the container in executing tasks; w1, w2 and w3 can all be expressed as weight coefficients.
[0151] Optionally, using an improved ant colony algorithm, adjusting the container scheduling solution based on the load imbalance may specifically include the following steps:
[0152] Step 1: Initialize the ant colony algorithm.
[0153] Specifically, initialize the ant colony, where each ant represents a possible container allocation scheme:
[0154] Ants=ant1,ant2,…,ant N
[0155] Among them, ant i It can be represented as the i-th ant, which represents a container allocation scheme; N can be represented as the number of ants.
[0156] Step 2: Build a solution. Specifically, for each ant i∈Ants, the solution can be constructed according to the following formula:
[0157] Solution=ConstructSolution(ant i ,InitialSchedule,A′)
[0158] ConstructSolution can be expressed as constructing a new container allocation solution based on the container scheduling solution and the resource similarity matrix, and InitialSchedule can be expressed as updating pheromones according to the new solution.
[0159] Step 3: Calculate the fitness of each solution:
[0160] Fitness=EvaluateFitness(Solution,ObjectiveFunction)
[0161] Among them, EvaluateFitness can be expressed as evaluating the fitness of the current solution; ObjectiveFunction can be expressed as the fitness of the current solution.
[0162] Step 4: Update global pheromone. Specifically, you can update global pheromone in the following ways:
[0163] UpdateGlobalPheromone(BestSolution)
[0164] The "BestSolution" can be represented as the current optimal solution. Based on fitness evaluation, the global optimal solution is recorded. When updating the global pheromone, the optimal solution is used to update the pheromone, thereby guiding the ants to move closer to the optimal solution.
[0165] Step 5: Iterative Optimization: Specifically, the steps of constructing a solution to update the global pheromone are repeated until the number of iterations or the convergence criterion is reached, thereby adjusting the container scheduling solution.
[0166] In an embodiment of the present invention, an improved ant colony algorithm can be used to optimize the allocation of application containers based on a preliminary container scheduling scheme and system load information. In an embodiment of the present invention, in order to reduce the load imbalance of the system and improve resource utilization and container performance, first, the load imbalance (Imbalance) of the current system can be calculated to reflect the load fluctuation of the system in different time periods. Then, a load balancing optimization objective function can be defined to combine the load imbalance, resource utilization and container performance to form a comprehensive optimization goal. Then, by initializing the ant colony, each ant represents a container allocation scheme. In the process of finding the optimal solution, the ant colony constructs a new container allocation scheme and continuously updates pheromones, so that each ant gradually approaches the optimal solution.
[0167] During the optimization process, each ant constructs a new solution based on the initial container scheduling plan and the resource similarity matrix, evaluates the fitness of the current solution, and weights the solution according to the optimization objective function. After each iteration, the probability of the ant's path selection is adjusted by evaluating the value of the objective function, thereby guiding the ant colony to conduct an effective search within the solution space and ultimately obtain the optimized scheduling solution.
[0168] In this embodiment of the present invention, an improved ant colony algorithm is used to achieve multi-objective optimization, balancing load, resource utilization, and container performance. This ensures system load balancing while improving overall resource utilization efficiency and container task execution performance. This embodiment of the present invention can be applied to complex container scheduling scenarios, especially in environments with large load fluctuations. It can not only effectively reduce system load imbalances but also enhance the intelligent level of resource management.
[0169] The technical solution of the embodiment of the present invention adjusts the initial resource pre-allocation amount of each application container in the target operating system according to the container similarity matrix, and obtains the target resource pre-allocation amount of the application container based on the adjusted resource pre-allocation amount, thereby realizing the function of adjusting the initial resource pre-allocation amount of the application container.
[0170] Figure 3 This is a schematic diagram of the structure of a container scheduling device provided by an embodiment of the present invention. Figure 3 As shown, the apparatus includes: a data acquisition module 310 , a similarity calculation module 320 , a resource allocation module 330 and a container scheduling module 340 .
[0171] Among them, the data acquisition module 310 is used to obtain the system resource usage information of the target operating system on which multiple application containers are installed, and determine the container operation data of each application container; wherein the target operating system is an embedded operating system for a power control system; the similarity calculation module 320 is used to determine the container similarity of any two application containers based on the system resource usage information and each container operation data, and obtain a container similarity matrix based on the container similarity; the resource allocation module 330 is used to obtain the target resource pre-allocation amount of each application container in the target operating system according to the container similarity matrix; the container scheduling module 340 is used to generate a container scheduling plan based on the target resource pre-allocation amount of each application container, so as to schedule the application containers in the target operating system based on the container scheduling plan.
[0172] The technical solution of an embodiment of the present invention obtains system resource usage information of a target operating system installed with multiple application containers through a data acquisition module, and determines the container operation data of each application container; wherein the target operating system is an embedded operating system for a power control system; a similarity calculation module determines the container similarity of any two application containers based on the system resource usage information and each container operation data, and obtains a container similarity matrix based on the container similarity; a resource allocation module obtains the target resource pre-allocation amount for each application container in the target operating system based on the container similarity matrix; and a container scheduling module generates a container scheduling plan based on the target resource pre-allocation amount for each application container, so as to schedule the application containers in the target operating system based on the container scheduling plan. The technical solution of the embodiment of the present invention realizes the reasonable and effective scheduling of containers in the embedded operating system for the power control system.
[0173] Optionally, the similarity calculation module 320 includes a portrait generation unit and a container similarity determination unit: wherein the portrait generation unit is used to obtain a container resource portrait of each application container based on the system resource usage information and the operation data of each container; the container similarity determination unit is used to determine the container similarity of any two application containers based on the container resource portraits of the two application containers.
[0174] Optionally, the portrait generation unit is used to adopt a decision tree construction algorithm to obtain a container resource portrait of each application container based on the system resource usage information and the operation data of each container.
[0175] Optionally, the container similarity determination unit is used to construct container feature vectors of any two application containers based on container resource usage feature information in the container resource portraits of the two application containers; and use a cosine similarity algorithm to determine the container similarity of the two application containers based on the feature vectors of the two application containers.
[0176] Optionally, each application container in the target operating system is set with an initial resource pre-allocation amount; the resource allocation module 330 is used to adjust the initial resource pre-allocation amount of the application container according to the container similarity matrix for each application container in the target operating system, and obtain the target resource pre-allocation amount of the application container based on the adjusted resource pre-allocation amount.
[0177] Optionally, the device further includes a scheme adjustment module; wherein the scheme adjustment module is configured to, after generating a container scheduling scheme based on the target resource pre-allocation amount of each application container,
[0178] Determine system load information of the target operating system, and determine a load imbalance of the target operating system according to the system load information; and use an improved ant colony algorithm to adjust the container scheduling scheme based on the load imbalance.
[0179] Optionally, the initial resource pre-allocation amount of each application container in the target operating system is set by the following formula:
[0180] BR(c i )=α×HR(c i )+β×CR(c i )+γ×AR(c i );
[0181] Among them, BR(c i ) represents the application container c i Initial resource pre-allocation amount; HR(c i ) represents the application container c i The historical resource usage peak value; CR (c i ) represents the application container c i Current resource usage; AR(c i ) represents the application container c i The average resource usage of ; α, β, γ represent weight coefficients, and α+β+γ=1.
[0182] The container scheduling device provided in the embodiment of the present invention can execute the container scheduling method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0183] It is worth noting that the various units and modules included in the above-mentioned container scheduling device are only divided according to functional logic, but are not limited to the above-mentioned division, as long as the corresponding functions can be achieved; in addition, the specific names of the functional units are only for the convenience of distinguishing each other and are not used to limit the scope of protection of the embodiments of the present invention.
[0184] Figure 4 A schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or claimed herein.
[0185] like Figure 4 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., which is communicatively connected to the at least one processor 11. The memory stores a computer program that can be executed by the at least one processor. The processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 into the random access memory (RAM) 13. Various programs and data required for the operation of the electronic device 10 can also be stored in the RAM 13. The processor 11, ROM 12, and RAM 13 are connected to each other via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0186] Multiple components in the electronic device 10 are connected to the I / O interface 15, including an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a magnetic disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0187] Processor 11 can be any general-purpose and / or specialized processing component with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors that run machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 executes the various methods and processes described above, such as the container scheduling method.
[0188] In some embodiments, the container scheduling method can be implemented as a computer program that is tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the container scheduling method described above can be performed. Alternatively, in other embodiments, processor 11 can be configured to perform the container scheduling method in any other appropriate manner (e.g., by means of firmware).
[0189] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0190] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the computer program is executed by the processor, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The computer program may be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0191] In the context of the present invention, computer-readable storage media can be tangible media that can contain or store a computer program for use with an instruction execution system, device or equipment or used in combination with an instruction execution system, device or equipment. Computer-readable storage media can include but are not limited to electronic, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, computer-readable storage media can be machine-readable signal media. More specific examples of machine-readable storage media can include electrical connections based on one or more lines, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0192] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0193] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0194] A computing system may include clients and servers. The clients and servers are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, creating a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host. This server is a hosting product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosting and VPS services.
[0195] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in the present invention can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution of the present invention can be achieved. This is not limited herein.
[0196] The above specific embodiments do not limit the scope of protection of the present invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention are intended to be included within the scope of protection of the present invention.
Claims
1. A container scheduling method, characterized in that: include: Obtaining system resource usage information of a target operating system having a plurality of application containers installed thereon, and determining container operation data of each of the application containers; wherein the target operating system is an embedded operating system for a power control system; determining a container similarity between any two application containers according to the system resource usage information and each container operation data, and obtaining a container similarity matrix based on the container similarities; Obtaining a target resource pre-allocation amount for each application container in the target operating system according to the container similarity matrix; A container scheduling scheme is generated based on the target resource pre-allocation amount of each application container, so as to schedule the application container in the target operating system based on the container scheduling scheme.
2. The method according to claim 1, characterized in that The determining the container similarity between any two application containers according to the system resource usage information and each container operation data includes: Obtaining a container resource profile of each application container based on the system resource usage information and the running data of each container; Based on the container resource portraits of any two application containers, the container similarity of the two application containers is determined.
3. The method according to claim 2, characterized in that Obtaining a container resource profile of each application container based on the system resource usage information and the running data of each container includes: A decision tree algorithm is used to obtain a container resource profile of each application container based on the system resource usage information and the operation data of each container.
4. The method according to claim 2, characterized in that The determining the container similarity of any two application containers based on the container resource portraits of the two application containers includes: Constructing container feature vectors of any two application containers based on container resource usage feature information in the container resource profiles of the two application containers; A cosine similarity algorithm is used to determine the container similarity of the two application containers based on the feature vectors of the two application containers.
5. The method according to claim 1, wherein Each application container in the target operating system is set with an initial resource pre-allocation amount; and obtaining the target resource pre-allocation amount for each application container in the target operating system according to the container similarity matrix includes: For each application container in the target operating system, the initial resource pre-allocation amount of the application container is adjusted according to the container similarity matrix, and the target resource pre-allocation amount of the application container is obtained based on the adjusted resource pre-allocation amount.
6. The method according to claim 1, characterized in that After generating a container scheduling solution based on the target resource pre-allocation amount of each application container, the method further includes: Determining system load information of the target operating system, and determining a load imbalance degree of the target operating system according to the system load information; An improved ant colony algorithm is used to adjust the container scheduling solution based on the load imbalance.
7. The method according to claim 1, characterized in that The initial resource pre-allocation amount for each application container in the target operating system is set using the following formula: BR(c i )=α×HR(c i )+β×CR(c i )+γ×AR(c i ) Among them, BR(c i ) represents the application container c i Initial resource pre-allocation amount; HR(c i ) represents the application container c i The historical resource usage peak value; CR (c i ) represents the application container c i Current resource usage; AR(c i ) represents the application container c i The average resource usage of ; α, β, γ represent weight coefficients, and α+β+γ=1.
8. A container scheduling device, characterized in that: The device comprises: a data acquisition module, configured to acquire system resource usage information of a target operating system having a plurality of application containers installed thereon, and determine container operation data of each of the application containers; wherein the target operating system is an embedded operating system for a power control system; a similarity calculation module, configured to determine the container similarity between any two application containers based on the system resource usage information and each container operation data, and obtain a container similarity matrix based on the container similarity; a resource allocation module, configured to obtain a target resource pre-allocation amount for each application container in the target operating system according to the container similarity matrix; The container scheduling module is configured to generate a container scheduling scheme based on the target resource pre-allocation amount of each application container, so as to schedule the application container in the target operating system based on the container scheduling scheme.
9. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor. The computer program is executed by the at least one processor to enable the at least one processor to perform the container scheduling method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the container scheduling method according to any one of claims 1 to 7 when executed.