CN115604269A - Load balancing method and device of server, electronic equipment and storage medium - Google Patents

Load balancing method and device of server, electronic equipment and storage medium Download PDF

Info

Publication number
CN115604269A
CN115604269A CN202211257621.9A CN202211257621A CN115604269A CN 115604269 A CN115604269 A CN 115604269A CN 202211257621 A CN202211257621 A CN 202211257621A CN 115604269 A CN115604269 A CN 115604269A
Authority
CN
China
Prior art keywords
server
determining
servers
target
load
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211257621.9A
Other languages
Chinese (zh)
Inventor
赵玉亭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202211257621.9A priority Critical patent/CN115604269A/en
Publication of CN115604269A publication Critical patent/CN115604269A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The application discloses a load balancing method and device of a server, electronic equipment and a storage medium, and relates to the technical field of distributed storage. The method comprises the following steps: dividing a data center into data areas with preset groups, and dividing servers in the data areas with the preset groups into a plurality of server clusters; determining an initial number of virtual nodes for each server cluster; determining the change condition of the load level of each server cluster in the current period; if the change condition is changed, determining the target number of the virtual nodes according to the current load value, the current available storage capacity and the inherent service capacity of the designated server in the current period; and determining the virtual nodes to be adjusted and the adjustment mode according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode to realize load balance of the server. The method and the device can avoid data identification overhead and reduce data migration overhead, improve the effect of load balancing, and improve the expandability of the distributed storage system.

Description

Load balancing method and device of server, electronic equipment and storage medium
Technical Field
The present application relates to the field of distributed storage technologies, and in particular, to a load balancing method and apparatus for a server, an electronic device, and a storage medium.
Background
In the big data era, distributed storage systems are an effective way to deal with the explosion of data. The distributed storage system faces the problem of uneven load caused by dynamic workload deflection, part of servers are dead due to too heavy load, and part of servers are wasted due to too light load, so that the overall performance of the distributed storage system is reduced. Therefore, load balancing algorithms have a significant impact on the performance of the distributed storage system.
Although many load balancing algorithms have achieved good results in a general distributed storage system, when the load balancing algorithms are directly applied to a video monitoring scene, performance is inevitably reduced. The reason is that a large number of write requests exist in a video monitoring scene, and data written in each time needs to be stored in a slice, so that the processing efficiency of the read-write requests is improved. Therefore, in the current load balancing algorithm, an index metadata for recording the storage position of each data slice needs to be generated, so that a large amount of storage space is occupied, and the performance and the expandability of the distributed storage system are greatly influenced. Therefore, how to perform load balancing on the server in a video monitoring scene becomes a problem to be solved urgently.
Disclosure of Invention
The application provides a load balancing method and device for a server, an electronic device and a storage medium, which can avoid data identification overhead and reduce a large amount of data migration overhead, improve the effect of load balancing under the condition of ensuring that the structure of a hash ring is not changed, and can improve the expandability of a distributed storage system.
In a first aspect, the present application provides a load balancing method for servers, where the method is applied to a distributed storage system, where the distributed storage system includes at least two data centers, and the data center includes a plurality of servers, and the method includes:
dividing the at least two data centers into data areas with preset groups, and dividing the servers in the data areas with the preset groups into a plurality of server clusters;
determining an initial number of virtual nodes for each server cluster;
determining the change condition of the load level of each server cluster in the current period;
if the change condition is changed, determining the target number of the virtual nodes in the corresponding server cluster according to the current load value, the current available storage capacity and the inherent service capacity of the specified server in each server cluster in the current period;
and determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode to realize load balance of the servers.
In a second aspect, the present application provides a load balancing apparatus for servers, where the apparatus is applied to a distributed storage system, where the distributed storage system includes at least two data centers, and the data center includes a plurality of servers, the apparatus includes:
the initial number determining module is used for dividing the at least two data centers into data areas with preset number of groups, dividing the servers in the data areas with the preset number of groups into a plurality of server clusters, and determining the initial number of the virtual nodes of each server cluster;
a load condition determining module, configured to determine a change condition of the load level of each server cluster in the current period,
a target number determining module, configured to determine, if the change condition is a change, a target number of virtual nodes in a corresponding server cluster according to a current load value, a current available storage capacity, and an inherent service capability of a designated server in each server cluster in a current period;
and the server load balancing module is used for determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode so as to realize the load balancing of the server.
In a third aspect, the present application provides an electronic device comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
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 to enable the at least one processor to execute the load balancing method of the server according to any embodiment of the present application.
In a fourth aspect, the present application provides a computer-readable storage medium storing computer instructions for causing a processor to implement a load balancing method for a server according to any embodiment of the present application when the computer instructions are executed.
The embodiment of the application provides a load balancing method for a server, which comprises the following steps: dividing at least two data centers into data areas with preset groups, dividing the servers in the data areas with the preset groups into a plurality of server clusters, and determining the initial number of virtual nodes of each server cluster; determining the change condition of the load level of each server cluster in the current period, and if the change condition is changed, determining the target number of the virtual nodes in the corresponding server cluster according to the current load value, the current available storage capacity and the inherent service capacity of the specified server in each server cluster in the current period; and determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode to realize load balance of the servers. The method designs a dynamic consistency algorithm DCHG based on grouping, and can quickly identify the data to be recovered through other servers when a certain server in the server cluster is down by setting the server cluster, thereby avoiding the data identification overhead; the management of the number of the virtual nodes is realized by comprehensively considering the load, the available storage capacity and the inherent service capacity of the server, and the number of the virtual nodes is adjusted by changing the state attribute of the virtual nodes, so that a large amount of data migration overhead can be reduced, the effect of load balancing is improved under the condition of ensuring that the structure of the hash ring is not changed, and the expandability of a distributed storage system can be improved.
It should be noted that all or part of the computer instructions may be stored on the computer readable storage medium. The computer-readable storage medium may be packaged together with the processor of the load balancing apparatus of the server, or may be packaged separately from the processor of the load balancing apparatus of the server, which is not limited in this application.
For the descriptions of the second aspect, the third aspect and the fourth aspect in the present application, reference may be made to the detailed description of the first aspect; in addition, for the beneficial effects described in the second aspect, the third aspect and the fourth aspect, reference may be made to the beneficial effect analysis of the first aspect, and details are not repeated here.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present application, nor do they limit the scope of the present application. Other features of the present application will become apparent from the following description.
It can be understood that, before the technical solutions disclosed in the embodiments of the present application are used, the type, the use range, the use scenario, and the like of the personal information related to the present application should be informed to the user and authorized by the user in a proper manner according to the relevant laws and regulations.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the description below are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings without creative efforts.
Fig. 1 is a first flowchart of a load balancing method for a server according to an embodiment of the present disclosure;
fig. 2 is a schematic diagram of data distribution based on a server grouping policy according to an embodiment of the present application;
fig. 3 is a second flowchart of a load balancing method for a server according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a load balancing apparatus of a server according to an embodiment of the present disclosure;
fig. 5 is a block diagram of an electronic device for implementing a load balancing method of a server according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in the present application without making any creative effort shall fall within the protection scope of the present application.
It should be noted that the terms "first," "second," "target," and "original" and the like in the description and claims of this application and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the application described herein are capable of operation in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Before the embodiments of the present application are introduced, a current server load balancing method is introduced. Dynamic adjustment of server load in a distributed storage system can be realized by adding or deleting virtual nodes in a Hash ring by generally adopting a Dynamic Consistent Hash (DCH) algorithm. Specifically, the method comprises the following steps: and calculating the initial number of the virtual nodes corresponding to each server from the perspective of the inherent service capacity (including the dominant frequency of a Central Processing Unit (CPU), the memory size and the network bandwidth) of each server. After the initial number of the virtual nodes corresponding to each server is obtained, the name of each virtual node can be determined by numbering the Internet Protocol Address (IP Address) of the server corresponding to the virtual node, and then the virtual node is mapped onto the hash ring through a preset hash function, so that the establishment of the hash ring can be completed. Because the load in the distributed storage system is dynamically changed, some adjustments need to be dynamically made to the virtual nodes on the hash ring in order to implement load balancing. If the load of the server becomes heavy, the number of the virtual nodes corresponding to the server can be reduced so as to reduce the possibility of receiving the load; otherwise, increasing the number of virtual nodes corresponding to the server increases the possibility that the light-load server receives the load, thereby realizing load balancing. And in the process of adjusting the hash ring, the number of virtual nodes increased or reduced by each server needs to be determined. The number of virtual nodes that the server changes is calculated from the viewpoint of the inherent service capacity and load of the server. The load of the server is calculated every other time period, the number of virtual nodes which should exist in each server in the current period is calculated, the number of the virtual nodes which need to be adjusted can be obtained by comparing the number of the virtual nodes which exist in each server with the number of the virtual nodes which exist in the current period, and the adjustment of the hash ring in the current period can be completed by deleting or adding the corresponding number of the virtual nodes from the hash ring, so that the load balance is realized.
However, in the above current server load balancing method, regarding the calculation of the number of virtual nodes, the following problems exist when the DCH algorithm is applied to a video monitoring scene:
(1) The available storage capacity of the server is ignored. In a video monitoring distributed storage system, a server with large available storage capacity has the capacity of storing more data, and more write requests can be allocated to the server. Therefore, more attention should be paid to the available storage capacity parameter of the server when adjusting the load.
(2) And frequently adjusting the number of the virtual nodes. The load change of the server may cause the number of virtual nodes that should exist in the current period to change, and even if the load state of the server is always normal, the number of virtual nodes corresponding to the server still needs to be changed, thereby increasing the management overhead of the hash ring.
(3) The calculation rule of the number of the virtual nodes needing to be adjusted is unreasonable. Because the number of virtual nodes which should exist in the server in the current period is in inverse proportion to the load value of the server, when the server fluctuates in the range of the light load state, the number of the virtual nodes which need to be adjusted is large, and the load of the light load server is excessively transferred; when the server is in a heavy load state, the number of the adjusted virtual nodes is small, and the load transfer function cannot be achieved.
(4) Regarding the adjustment of the hash ring, when the DCH algorithm is applied to a video monitoring scene, a large amount of data migration and identification overhead is generated.
In summary, when the DCH algorithm is directly applied to the video monitoring distributed storage system, problems of uneven load and large amount of data migration and identification overhead may occur.
Fig. 1 is a first flowchart of a load balancing method for a server according to an embodiment of the present disclosure, which is applicable to load balancing of servers in a distributed storage system in a video monitoring scene. The load balancing method for the server provided in this embodiment may be executed by the load balancing apparatus for the server provided in this embodiment, where the apparatus may be implemented in a software and/or hardware manner and integrated in an electronic device executing the method.
Referring to fig. 1, the method of the present embodiment includes, but is not limited to, the following steps:
s110, dividing at least two data centers into data areas with preset groups, and dividing the servers in the data areas with the preset groups into a plurality of server clusters.
The number of the preset groups is not limited, and two groups are selected; in this embodiment, a preset number of groups is used as two groups to explain the server load balancing method of the present application. The data center includes a plurality of servers therein. The regional information for each data center may be different, such as data center a located in shanghai, data center B located in wuhan, etc.
Before dividing the servers in the data area with the preset number of groups into a plurality of server clusters, the method further comprises the following steps: determining the sum of the number of servers in at least two data centers; determining a load of each server in at least two data centers; and obtaining a second number by carrying out remainder on the sum of the numbers and a preset number, and eliminating the second number of servers with the highest load from the at least two data centers so as to ensure that the second number of servers do not participate in the server grouping strategy. The preset number is the number of the servers contained in the server cluster.
In the embodiment of the application, at least two data centers are divided into data areas with preset groups by taking the data centers as units according to the number of servers in each data center. No matter there are even number of data centers or odd number of data centers, at least two data centers are divided into two groups according to the number of servers in each data center, and the number of servers in each group of data area is close.
In the above description, the data area is divided in units of data centers, that is, the data area is divided according to the area information of the data centers. The servers of the same data center are located in one data area. The number of servers in each group of data areas can be equal or unequal, but the number of servers is similar.
Illustratively, there are four data centers, the number of servers in data center a is 5, the number of servers in data center B is 8, the number of servers in data center C is 6, and the number of servers in data center D is 7; according to the number of servers in each data center, a data center A and a data center B are classified into a data area 1, a data center C and a data center D are classified into a data area 2, and the number of data centers contained in each data area is equal.
As another example, there are four data centers, the number of servers in data center a is 2, the number of servers in data center B is 3, the number of servers in data center C is 4, and the number of servers in data center D is 10; according to the number of servers in each data center, a data center A, a data center B and a data center C are classified into a data area 1, a data center D is classified into a data area 2, and the number of the data centers contained in each data area is unequal.
As another example, there are three data centers, the number of servers in data center a is 5, the number of servers in data center B is 6, and the number of servers in data center C is 10; according to the number of the servers in each data center, the data center A and the data center B are classified into a data area 1, the data center C is classified into a data area 2, and the number of the data centers contained in each data area is unequal.
In the embodiment of the application, after two groups of data areas are obtained, the servers in the two groups of data areas are divided into a plurality of server clusters. The server cluster comprises a preset number of target servers. And selecting a preset number of servers from the data area 1 and the data area 2 to form a server cluster. According to the copy allocation rule of the DCH algorithm, a copy of the data1 is stored in each server of the server cluster. The purpose of obtaining a plurality of server clusters through the server grouping strategy in the step is as follows: when a certain server in the server cluster is down, the data to be recovered can be quickly identified through other servers, and then data identification cost is avoided.
S120, determining the initial number of the virtual nodes of each server cluster.
In this embodiment of the present application, the server in the distributed storage system is grouped through the step S110 to obtain a plurality of server clusters, and then the establishment of the hash ring and the adjustment of the hash ring both use the server clusters as a unit. The method is based on a Dynamic consistency of grouping (DCHG) algorithm, and the initial number of the virtual nodes corresponding to each server cluster is calculated from the view point of the inherent service capacity and the available storage capacity of a specified server (namely, a specified server in the server cluster).
Further, determining an initial number of virtual nodes for each server cluster includes: determining a server with the minimum available storage capacity in each server cluster as a designated server, and determining the inherent service capacity of the designated server; and determining the initial number of the virtual nodes of the corresponding server cluster according to the inherent service capacity of the specified server and the available storage capacity of the specified server.
According to the cask principle, the server with the least available storage capacity in each server cluster represents the maximum processing capacity of the server cluster. Therefore, the server with the least available storage capacity in each server cluster is selected, and the initial number of the virtual nodes corresponding to the server cluster is calculated by the following formula (1).
Figure BDA0003890244600000101
In the formula, V represents the initial number of the virtual nodes corresponding to the server cluster; s i Representing the inherent service capability of a server i in the server cluster; DC (direct current) i Representing the available storage capacity of a server i in the server cluster; the constant is a constant and is used for ensuring that the number of virtual nodes of the server cluster in the distributed storage system is moderate.
Fig. 2 is a schematic diagram of data distribution based on a server grouping policy. As can be seen from the figure, the distributed storage system includes twelve servers a to M, and is divided into four server clusters (e.g., group1 to group4 in the figure) according to a server grouping policy, and the virtual nodes 1-1 to 1-3, 2-1 to 2-3, 3-1 to 3-2, and 4-1 to 4-2 correspond to the server clusters 1 to 4, respectively. According to the replica allocation rule of the server grouping policy, data1 is allocated to servers a, B, C, data2 is allocated to servers H, I, G, and data3 is allocated to servers K, L, M. When the server A is down, the data needing to be recovered can be quickly determined to be data1 through the server B or C in the group1 where the server A is located. In addition, when the data1 is accessed, a server with light load can be selected from the group1 to process the request for reading the data1, so that load balance among the copies is realized, and the load balance effect of the distributed storage system is enhanced.
S130, determining the change condition of the load level of each server cluster in the current period.
In the embodiment of the present application, after obtaining the initial number of virtual nodes corresponding to each server cluster, the name of each virtual node, i.e., VName = IP1# IP2# IP3# k (k =0,1,2, \8230;) is determined by a combination of IP addresses of servers in the server cluster and a virtual node number, where k is an index number of the virtual node, and then the virtual node is mapped onto the hash ring by using an MD5 hash function, that is, the establishment of the hash ring is completed.
Similar to DCH, DCHG also needs to adjust the hash ring in order to achieve dynamic load balancing. Since the DCHG establishes a hash ring based on packets, the server in each cluster of servers with the least available storage capacity represents the maximum processing capacity of the group. Therefore, when the hash ring is adjusted, the server with the least available storage capacity in each server cluster is collected to calculate the number of virtual nodes that need to be adjusted by the server cluster. In addition, because frequent load adjustment increases the management overhead on the hash ring, and affects the request distribution result, thereby reducing the load balancing effect, the DCHG further designs a virtual node adjustment rule.
This step is the first step of the virtual node adjustment rule, i.e., determining whether the server cluster needs to adjust the number of virtual nodes. Specifically, the method comprises the following steps: and respectively calculating the load value of each server in the server cluster, and adding the load values to obtain the load value of the server cluster. The load value of the server cluster is divided into a plurality of load levels. If the load grade in the adjacent period changes, the reasonable load adjustment can be realized by adjusting the number of the virtual nodes.
Wherein, the load value of the server is calculated by the following formula (2):
L i =W c ×L(C i )+W m ×L(M i )+W b ×L(B i ) (2)
in the formula, L i Representing the load of server i in the server cluster; l (C) i ) Representing the CPU utilization rate of a server i in the server cluster; l (M) i ) The memory utilization rate of a server i in the server cluster is represented; l (B) i ) Representing the network utilization rate of a server i in the server cluster; w c 、W m 、W b Weights representing the CPU utilization, memory utilization and network utilization of the server, respectively, wherein W c +W m +W b =1。
Alternatively, the load may be divided into eight load classes according to the size of the load value. As shown in table 1 below:
table 1 load value versus load class for a server cluster
Figure BDA0003890244600000121
And comparing the load level of each server cluster in the last period with the load level of each server cluster in the current period, and determining the change condition of the load level of each server cluster in the current period. The load level LL1 of each server cluster in the last period T1 and the load level LL2 in the current period T2 are obtained through formula (2) and table 1. If LL1> LL2, the load level change condition of the server cluster is load reduction, and a part of virtual nodes need to be added to increase the possibility of the group of receiving loads; if LL1< LL2, the load level of the server cluster changes in a heavy state, and a part of virtual nodes need to be reduced to reduce the possibility of receiving the load; if LL1= LL2, it is described that the load level of the server cluster is unchanged, and the hash ring does not need to be adjusted.
And S140, if the change condition is changed, determining the target number of the virtual nodes in the corresponding server cluster according to the current load value, the current available storage capacity and the inherent service capacity of the specified server in each server cluster in the current period.
In this embodiment of the application, when the change condition of the load level of the server cluster is load reduction or load change, the number of virtual nodes on the hash ring needs to be adjusted. This step is the second step of the virtual node adjustment rule, i.e. calculating the target number of virtual nodes in the server cluster.
During the operation of the distributed storage system, the available storage capacity of the server is dynamically changed, so that the real-time load and the available storage capacity of the server need to be considered when calculating the number of virtual nodes to be adjusted. After the server begins to receive the load, its current service capability is 1-L i At this time, the number of the virtual nodes left by the server should be 1-L of the initial number of the virtual nodes i And (4) multiplying. Meanwhile, since the available storage capacity of the server i is also changed after the load is received, the current available storage capacity of the current period is applied to participate in the calculation.
Further, determining the target number of the virtual nodes in the corresponding server cluster according to the current load value, the current available storage capacity and the inherent service capability of the designated server in each server cluster in the current period includes: determining a current load value and a current available storage capacity of a designated server in a current period; determining a current service capability based on the current load value and the current available storage capacity; a target number of virtual nodes in the corresponding server cluster is determined based on the current service capabilities and the inherent service capabilities. Calculating the target number of the virtual nodes in the server cluster by the following formula (3):
Figure BDA0003890244600000131
in the formula, V' represents the target number of the virtual nodes corresponding to the server cluster; s i Representing the inherent service capability of a server i in the server cluster; l is i Representing the current load value of a server i in the server cluster; DC' i Representing the current available storage capacity of server i in the server cluster; the constant is a constant and is used for ensuring that the number of virtual nodes of the server cluster in the distributed storage system is moderate.
S150, determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode to realize load balance of the servers.
In the embodiment of the present application, this step is a third step of the virtual node adjustment rule, that is, the state attribute of the virtual node is adjusted. In the current server load balancing method, load is adjusted by adding and deleting virtual nodes, a hash ring structure change may cause a request distribution result change, and data migration is required to ensure the processing efficiency of a read request. Therefore, the method and the device have the advantages that the state management rule is designed for the virtual node, so that the structure of the hash ring can be guaranteed not to be changed when the load is adjusted, the read request distribution result can be guaranteed to be slightly influenced, and data migration is avoided. Specifically, two state attributes, OPEN and CLOSE, are set for the virtual nodes, and the state attributes of the virtual nodes are changed to replace the addition and deletion of the virtual nodes, so that the structure of the hash ring is prevented from changing. The state attribute is used to control the reception of write requests by the virtual node.
Further, determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial number and the target number includes: determining a first number of virtual nodes to be adjusted based on a difference between the initial number and the target number; if the initial number is larger than the target number, the adjustment mode is to set the state attributes of the first number of virtual nodes to be closed; if the initial number is less than the target number, the adjustment mode is to set the state attributes of the first number of virtual nodes to be on. The adjustment of the hash ring in the current period can be completed by changing the state attribute of the virtual node to be adjusted on the hash ring, so that the load balance is realized.
Specifically, the virtual node state management rule is summarized as follows:
(a) The state of the virtual node is OPEN indicating that the virtual node is visible to both read and write requests. When the load of the server becomes light, the state of the partial virtual node corresponding to the server is set to be OPEN, namely the partial virtual node is opened to be visible to both read requests and write requests.
(b) The virtual node state is CLOSE, which means that the virtual node is visible to read requests and invisible to write requests. When the load of the server becomes heavy, the state of the partial virtual node corresponding to the server is set to be CLOSE, namely, the partial virtual node is closed, so that the partial virtual node is invisible to the write request and visible to the read request.
(c) When the load of a server does not change greatly (i.e., the load level does not change), the state of the virtual node corresponding to the server remains unchanged.
Compared with the virtual node add-delete strategy, the state attribute management strategy of the virtual node reduces a large amount of data migration overhead. When the load is adjusted by adding or deleting virtual nodes, the change of the hash ring structure may cause the change of the request allocation result, and data migration is required to ensure the processing efficiency of the read request. And when the load is adjusted by changing the state of the virtual node, the structure of the hash ring can be ensured not to be changed, the load balancing purpose is realized while the read request distribution result is ensured to be less influenced, and the data migration and identification overhead is avoided.
According to the technical scheme provided by the embodiment, at least two data centers are divided into data areas with preset groups, and the servers in the data areas with the preset groups are divided into a plurality of server clusters; determining an initial number of virtual nodes for each server cluster; determining the change condition of the load level of each server cluster in the current period; if the change condition is changed, determining the target number of the virtual nodes in the corresponding server cluster according to the current load value, the current available storage capacity and the inherent service capacity of the specified server in each server cluster in the current period; and determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode to realize load balance of the servers. The method designs a packet-based dynamic consistency algorithm DCHG, and can quickly identify the data to be recovered through other servers when a certain server in the server cluster is down by setting the server cluster, thereby avoiding data identification overhead; the management of the number of the virtual nodes is realized by comprehensively considering the load, the available storage capacity and the inherent service capacity of the server, and the number of the virtual nodes is adjusted by changing the state attribute of the virtual nodes, so that a large amount of data migration overhead can be reduced, the effect of load balancing is improved under the condition of ensuring that the structure of the hash ring is not changed, and the expandability of a distributed storage system can be improved.
The load balancing method for the server provided in the embodiment of the present application is further described below, and fig. 3 is a second flowchart of the load balancing method for the server provided in the embodiment of the present application. The embodiment of the application is optimized on the basis of the embodiment, and specifically optimized as follows: this embodiment explains a specific process of the server grouping policy (i.e., the server in the data area with the preset number of groups is divided into a plurality of server clusters in step S110 in the embodiment of fig. 1) in detail. The server cluster comprises three preset number of target servers, and the preset number of groups of the data area is two.
Referring to fig. 3, the method of the present embodiment includes, but is not limited to, the following steps:
s210, sorting the available storage capacities of the servers in each group of data areas in a descending order to obtain capacity sorting results, and respectively taking the server located in the first order in the capacity sorting results as a target server to obtain a first target server and a second target server.
In the embodiment of the present application, the server cluster includes three target servers, which are denoted as a first target server, a second target server, and a third target server. And respectively taking the server with the largest available storage capacity in each group of data areas as a target server to obtain a first target server and a second target server.
S220, respectively taking the server which is positioned in the second order in the capacity sorting results of the two groups of data areas as a candidate server, thereby obtaining two candidate servers.
In the embodiment of the application, the server with the second largest available storage capacity in each group of data areas is respectively used as the candidate server, so that two candidate servers are obtained.
And S230, determining a third target server from the two candidate servers according to a preset rule, so as to obtain a server cluster.
In the embodiment of the present application, the preset rule specifically includes: determining a capacity difference between available storage capacities of the candidate servers; if the capacity difference value exceeds a preset capacity value (for example, the preset capacity value can be 4T), taking the candidate server with larger available storage capacity as a third target server; if the capacity difference value does not exceed the preset capacity value, respectively determining the total number of the servers in the two groups of data areas; if the total number of the servers in the two groups of data areas is not equal, the candidate server corresponding to the data area with more total number of the servers is used as a third target server; and if the total number of the servers in the two groups of data areas is equal, determining the inherent service capacity of each candidate server, determining the service difference value between the inherent service capacity of each candidate server and the inherent service capacity of the first target server or the inherent service capacity of the second target server, and taking the candidate server with the smaller service difference value as a third target server.
S240, removing the target server from the corresponding data areas to obtain two new data areas, and repeatedly executing the operation of respectively using the server with the largest available storage capacity in each data area as the target server to obtain a plurality of server clusters.
In the embodiment of the application, the three determined target servers are removed from the respective corresponding data areas to obtain two new data areas. And repeating the steps S210 to S240 until the servers in the two groups of data areas are completely grouped, so that a plurality of server clusters can be obtained.
The server grouping strategy considers the requirements of two places of copy distribution and the importance of available storage capacity in the video monitoring distributed storage system, specific grouping rules are formulated, the distribution mode of a consistent hash algorithm to the copies is optimized, the data to be recovered can be quickly determined when the server is down, and data identification overhead is avoided. In addition, the selection of the server with the lightest load in the group to process the corresponding read request can further enhance the load balancing effect.
According to the technical scheme provided by the embodiment, the available storage capacities of the servers in each group of data areas are sorted in a descending order to obtain capacity sorting results, and the servers in the first order in the capacity sorting results are respectively used as target servers, so that a first target server and a second target server are obtained; respectively taking the server which is positioned at the second order in the capacity sequencing results of the two groups of data areas as a candidate server, thereby obtaining two candidate servers; determining a third target server from the two candidate servers according to a preset rule, so as to obtain a server cluster; and removing the target server from the respective corresponding data areas to obtain two new groups of data areas, and repeatedly executing the operation of respectively taking the server with the maximum available storage capacity in each group of data areas as the target server to obtain a plurality of server clusters. According to the method and the device, the server cluster is set through the server grouping strategy, the data to be recovered can be rapidly identified through other servers when a certain server in the server cluster is down, and then data identification cost is avoided. The effect of load balancing is improved under the condition that the structure of the hash ring is not changed, and the expandability of the distributed storage system can be improved.
Fig. 4 is a schematic structural diagram of a load balancing apparatus for servers, where the apparatus is applied to a distributed storage system, where the distributed storage system includes at least two data centers, and the data center includes a plurality of servers, as shown in fig. 4, the apparatus 400 may include:
an initial number determining module 410, configured to divide the at least two data centers into data areas with a preset number of groups, divide the servers in the data areas with the preset number of groups into a plurality of server clusters, and determine an initial number of virtual nodes of each server cluster;
a load condition determining module 420 for determining the changing condition of the load level of each server cluster in the current period,
a target number determining module 430, configured to determine, if the change condition is a change, a target number of virtual nodes in a corresponding server cluster according to a current load value, a current available storage capacity, and an inherent service capability of a designated server in each server cluster in a current period;
the server load balancing module 440 is configured to determine a to-be-adjusted virtual node and an adjustment manner in the corresponding server cluster according to the initial number and the target number, and adjust the to-be-adjusted virtual node based on the adjustment manner, so as to implement load balancing of the server.
Optionally, the server cluster includes a preset number of target servers, where the preset number is three, and the preset number is two;
further, the initial number determining module 410 may include a server cluster determining unit and an initial number determining unit;
the server cluster determining unit may be specifically configured to: sorting the available storage capacity of the servers in each group of data areas in a descending order to obtain capacity sorting results, and respectively taking the server positioned in the first order in the capacity sorting results as a target server to obtain a first target server and a second target server; determining a third target server from the two groups of data areas according to a preset rule, thereby obtaining a server cluster; and removing the target server from the corresponding data areas to obtain two new groups of data areas, and repeatedly executing the operation of respectively taking the server with the largest available storage capacity in each group of data areas as the target server to obtain a plurality of server clusters.
Further, the server cluster determining unit may be specifically configured to: respectively taking the server which is positioned at the second order in the capacity sorting results of the two groups of data areas as a candidate server, and determining the capacity difference value between the available storage capacities of the candidate servers; if the capacity difference value exceeds a preset capacity value, taking a candidate server with larger available storage capacity as the third target server; if the capacity difference value does not exceed a preset capacity value, respectively determining the total number of the servers in the two groups of data areas; if the total number of the servers in the two groups of data areas is not equal, the candidate server corresponding to the data area with more total number of servers is used as the third target server; if the total number of the servers in the two groups of data areas is equal, determining the inherent service capacity of each candidate server, determining the service difference value between the inherent service capacity of each candidate server and the inherent service capacity of the first target server or the inherent service capacity of the second target server, and taking the candidate server with smaller service difference value as the third target server.
The initial quantity determining unit may be specifically configured to: determining the server with the minimum available storage capacity in each server cluster as a designated server, and determining the inherent service capacity of the designated server; and determining the initial number of the virtual nodes of the corresponding server cluster according to the inherent service capacity of the specified server and the available storage capacity of the specified server.
Optionally, configuring a state attribute for the virtual node, where the state attribute is used to control the virtual node to receive a write request;
further, the server load balancing module 440 may be specifically configured to: determining a first number of virtual nodes to be adjusted based on a difference between the initial number and the target number; if the initial number is greater than the target number, the adjustment mode is to set the state attributes of the first number of virtual nodes to be closed; if the initial number is smaller than the target number, the adjustment mode is to set the state attribute of the first number of virtual nodes to be on.
Further, the target number determining module 430 may be specifically configured to: determining a current load value and a current available storage capacity of the designated server in a current period; determining a current service capability based on the current load value and the current available storage capacity; determining a target number of virtual nodes in a corresponding server cluster based on the current service capability and the inherent service capability.
Further, the load balancing apparatus of the server may further include: a server eliminating module;
the server removing module is used for determining the sum of the number of the servers in the at least two data centers before the servers in the data area with the preset number of groups are divided into a plurality of server clusters; determining a load of each server in the at least two data centers; and obtaining a second quantity by carrying out complementation on the quantity sum and the preset quantity, and eliminating the servers with the highest load in the second quantity from the at least two data centers.
The load balancing device for the server provided by the embodiment can be applied to the load balancing method for the server provided by any embodiment, and has corresponding functions and beneficial effects.
Fig. 5 is a block diagram of an electronic device for implementing a load balancing method for a server according to an embodiment of the present application. The electronic device 10 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the applications described and/or claimed herein.
As shown in fig. 5, the electronic device 10 includes at least one processor 11, and a memory communicatively connected to the at least one processor 11, such as a Read Only Memory (ROM) 12, a Random Access Memory (RAM) 13, and the like, wherein the memory stores a computer program executable by the at least one processor, and the processor 11 may perform various suitable 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. In the RAM 13, various programs and data necessary for the operation of the electronic apparatus 10 can also be stored. The processor 11, the ROM 12, and the 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.
A number of 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, or the like; an output unit 17 such as various types of displays, speakers, and the like; a storage unit 18 such as a magnetic disk, an optical disk, or the like; and a communication unit 19 such as a network card, modem, 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.
The processor 11 may be a variety of general and/or special purpose processing components having 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 dedicated Artificial Intelligence (AI) computing chips, various processors running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The processor 11 performs the various methods and processes described above, such as a load balancing method of the server.
In some embodiments, the load balancing method of the server may be implemented as a computer program tangibly embodied on a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 10 via the ROM 12 and/or the communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the load balancing method of the server described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured by any other suitable means (e.g., by means of firmware) to perform a load balancing method of the server.
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for implementing the methods of the present application 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, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be performed. A computer program can execute entirely on a machine, partly on a machine, as a stand-alone software package partly on a machine and partly on a remote machine or entirely on a remote machine or server.
In the context of this application, a computer readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. A computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here 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 a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the electronic device. Other kinds of devices may also be used to provide for interaction with a user; for example, 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 may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, 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: local Area Networks (LANs), wide Area Networks (WANs), blockchain networks, and the Internet.
The computing system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical host and VPS service are overcome.
It should be understood that various forms of the flows shown above, reordering, adding or deleting steps, may be used. For example, the steps described in the present application may be executed in parallel, sequentially, or in different orders, as long as the desired results of the technical solution of the present application can be achieved, and the present invention is not limited thereto.
The above-described embodiments should not be construed as limiting the scope of the present application. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (10)

1. A load balancing method for servers is applied to a distributed storage system, the distributed storage system comprises at least two data centers, each data center comprises a plurality of servers, and the method comprises the following steps:
dividing the at least two data centers into data areas with preset groups, and dividing the servers in the data areas with the preset groups into a plurality of server clusters;
determining an initial number of virtual nodes for each server cluster;
determining the change condition of the load level of each server cluster in the current period;
if the change condition is changed, determining the target number of the virtual nodes in the corresponding server cluster according to the current load value, the current available storage capacity and the inherent service capacity of the specified server in each server cluster in the current period;
and determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode to realize load balance of the servers.
2. The load balancing method for the servers according to claim 1, wherein the server cluster includes a preset number of target servers, the preset number is three, and the preset number is two; the dividing the servers in the data area with the preset number of groups into a plurality of server clusters comprises:
sorting the available storage capacity of the servers in each group of data areas in a descending order to obtain capacity sorting results, and respectively taking the server positioned in the first order in the capacity sorting results as a target server to obtain a first target server and a second target server;
determining a third target server from the two groups of data areas according to a preset rule, thereby obtaining a server cluster;
and removing the target server from the corresponding data areas to obtain two new groups of data areas, and repeatedly executing the operation of respectively taking the server with the largest available storage capacity in each group of data areas as the target server to obtain a plurality of server clusters.
3. The method for load balancing of servers according to claim 2, wherein the determining a third target server from two sets of data areas according to a preset rule comprises:
respectively taking the server which is positioned at the second order in the capacity sorting results of the two groups of data areas as a candidate server, and determining the capacity difference value between the available storage capacities of the candidate servers;
if the capacity difference value exceeds a preset capacity value, taking a candidate server with larger available storage capacity as the third target server;
if the capacity difference value does not exceed a preset capacity value, respectively determining the total number of the servers in the two groups of data areas;
if the total number of the servers in the two groups of data areas is not equal, taking the candidate server corresponding to the data area with more total number of the servers as the third target server;
if the total number of the servers in the two groups of data areas is equal, determining the inherent service capacity of each candidate server, determining the service difference value between the inherent service capacity of each candidate server and the inherent service capacity of the first target server or the inherent service capacity of the second target server, and taking the candidate server with smaller service difference value as the third target server.
4. The load balancing method for the server according to claim 1, wherein a status attribute is configured for the virtual node, and the status attribute is used for controlling the virtual node to receive a write request; the determining of the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial number and the target number includes:
determining a first number of virtual nodes to be adjusted based on a difference between the initial number and the target number;
if the initial number is greater than the target number, the adjustment mode is to set the state attributes of the first number of virtual nodes to be closed;
if the initial number is smaller than the target number, the adjustment mode is to set the state attribute of the first number of virtual nodes to be on.
5. The method of load balancing of servers according to claim 1, wherein said determining the initial number of virtual nodes for each server cluster comprises:
determining the server with the minimum available storage capacity in each server cluster as a designated server, and determining the inherent service capacity of the designated server;
and determining the initial number of the virtual nodes of the corresponding server cluster according to the inherent service capacity of the specified server and the available storage capacity of the specified server.
6. The method for load balancing of servers according to claim 5, wherein the determining the target number of virtual nodes in the corresponding server cluster according to the current load value, the current available storage capacity and the inherent service capability of the designated server in each server cluster in the current period includes:
determining a current load value and a current available storage capacity of the designated server in a current period;
determining a current service capability based on the current load value and the current available storage capacity;
determining a target number of virtual nodes in a corresponding server cluster based on the current service capability and the inherent service capability.
7. The method for load balancing of servers according to claim 2, wherein before the dividing the servers in the data area with the preset number of groups into a plurality of server clusters, the method further comprises:
determining a sum of the number of servers in the at least two data centers;
determining a load of each server in the at least two data centers;
and obtaining a second quantity by carrying out complementation on the quantity sum and the preset quantity, and eliminating the servers with the highest load in the second quantity from the at least two data centers.
8. An apparatus for load balancing of servers, the apparatus being applied to a distributed storage system, the distributed storage system including at least two data centers, the data centers including a plurality of servers, the apparatus comprising:
the initial number determining module is used for dividing the at least two data centers into data areas with preset number of groups, dividing the servers in the data areas with the preset number of groups into a plurality of server clusters, and determining the initial number of the virtual nodes of each server cluster;
a load condition determining module, configured to determine a change condition of the load level of each server cluster in the current period,
a target number determining module, configured to determine, if the change status is changed, a target number of virtual nodes in a corresponding server cluster according to a current load value, a current available storage capacity, and an inherent service capability of a designated server in each server cluster in a current period;
and the server load balancing module is used for determining the virtual nodes to be adjusted and the adjustment mode in the corresponding server cluster according to the initial quantity and the target quantity, and adjusting the virtual nodes to be adjusted based on the adjustment mode so as to realize the load balancing of the server.
9. An electronic device, characterized in that the electronic device comprises:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores a computer program executable by the at least one processor, the computer program being executable by the at least one processor to enable the at least one processor to perform the method of load balancing of servers of any one of claims 1 to 7.
10. A computer-readable storage medium, storing computer instructions for causing a processor to implement a method for load balancing of a server according to any one of claims 1 to 7 when executed.
CN202211257621.9A 2022-10-14 2022-10-14 Load balancing method and device of server, electronic equipment and storage medium Pending CN115604269A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211257621.9A CN115604269A (en) 2022-10-14 2022-10-14 Load balancing method and device of server, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211257621.9A CN115604269A (en) 2022-10-14 2022-10-14 Load balancing method and device of server, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115604269A true CN115604269A (en) 2023-01-13

Family

ID=84846833

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211257621.9A Pending CN115604269A (en) 2022-10-14 2022-10-14 Load balancing method and device of server, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115604269A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116166202A (en) * 2023-03-30 2023-05-26 中国华能集团清洁能源技术研究院有限公司 Method, device, equipment and medium for placing copies in big data environment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116166202A (en) * 2023-03-30 2023-05-26 中国华能集团清洁能源技术研究院有限公司 Method, device, equipment and medium for placing copies in big data environment

Similar Documents

Publication Publication Date Title
US11361483B2 (en) Graph partitioning for massive scale graphs
CN107734052B (en) Load balancing container scheduling method facing component dependence
US9246840B2 (en) Dynamically move heterogeneous cloud resources based on workload analysis
US9760429B2 (en) Fractional reserve high availability using cloud command interception
US20150172204A1 (en) Dynamically Change Cloud Environment Configurations Based on Moving Workloads
US11966792B2 (en) Resource processing method of cloud platform, related device, and storage medium
CN110018799A (en) A kind of main determining method, apparatus of storage pool PG, equipment and readable storage medium storing program for executing
US20120221730A1 (en) Resource control system and resource control method
CN112860695B (en) Monitoring data query method, device, equipment, storage medium and program product
CN109981702B (en) File storage method and system
US20150169339A1 (en) Determining Horizontal Scaling Pattern for a Workload
CN114861911B (en) Deep learning model training method, device, system, equipment and medium
CN112181613B (en) Heterogeneous resource distributed computing platform batch task scheduling method and storage medium
CN113392863A (en) Method and device for acquiring machine learning training data set and terminal
CN108376103A (en) A kind of the equilibrium of stock control method and server of cloud platform
CN115718644A (en) Computing task cross-region migration method and system for cloud data center
CN115604269A (en) Load balancing method and device of server, electronic equipment and storage medium
CN110795323A (en) Load statistical method, device, storage medium and electronic equipment
CN113268329A (en) Request scheduling method, device and storage medium
US11625273B1 (en) Changing throughput capacity to sustain throughput for accessing individual items in a database
US11374869B2 (en) Managing bandwidth based on user behavior
CN110069319B (en) Multi-target virtual machine scheduling method and system for cloud resource management
CN110908783A (en) Management and control method, system and equipment for virtual machine of cloud data center
CN113434270B (en) Data resource scheduling method and device, electronic equipment and storage medium
US11288179B2 (en) Co-operative memory management system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination