CN113867964A - Load balancing method, device, equipment and readable storage medium - Google Patents
Load balancing method, device, equipment and readable storage medium Download PDFInfo
- Publication number
- CN113867964A CN113867964A CN202111166677.9A CN202111166677A CN113867964A CN 113867964 A CN113867964 A CN 113867964A CN 202111166677 A CN202111166677 A CN 202111166677A CN 113867964 A CN113867964 A CN 113867964A
- Authority
- CN
- China
- Prior art keywords
- node
- group
- nodes
- traffic
- backup
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000005012 migration Effects 0.000 claims description 20
- 238000013508 migration Methods 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 12
- 230000001174 ascending effect Effects 0.000 claims description 7
- 230000000694 effects Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 9
- 238000012163 sequencing technique Methods 0.000 description 3
- 101000641224 Homo sapiens Vimentin-type intermediate filament-associated coiled-coil protein Proteins 0.000 description 2
- 102100034331 Vimentin-type intermediate filament-associated coiled-coil protein Human genes 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The application discloses a load balancing method, a device, equipment and a readable storage medium. The method comprises the steps that a plurality of flow groups to be distributed are distributed to each node in a balanced mode, so that the service pressure actually borne by each node is balanced; then, the backup groups of each traffic group are distributed to each node in a balanced manner, so that after a certain traffic group or node fails, other nodes or corresponding backup groups can immediately continue to service, so that the service is not interrupted, the actual load on each node is relatively balanced, any traffic group and the backup group corresponding to the traffic group are not in the same node, the conflict between the traffic group and the corresponding backup group is avoided, and the probability of the simultaneous failure of the backup group and the corresponding traffic group is reduced. Accordingly, the load balancing device, the equipment and the readable storage medium provided by the application also have the technical effects.
Description
Technical Field
The present application relates to the field of computer technologies, and in particular, to a load balancing method, apparatus, device, and readable storage medium.
Background
At present, the existing load balancing scheme only performs load balancing on the running services on each node, and does not consider the load size on different nodes after individual service failure. The solution is not flexible and precise enough, resulting in uneven load on each node after individual service failures.
Therefore, how to make the load balancing scheme more flexible and accurate is a problem to be solved by those skilled in the art.
Disclosure of Invention
In view of the above, an object of the present application is to provide a load balancing method, apparatus, device and readable storage medium, so that the load balancing scheme is more flexible and precise. The specific scheme is as follows:
in a first aspect, the present application provides a load balancing method, including:
determining a plurality of nodes capable of bearing traffic groups and a plurality of traffic groups to be distributed;
after the plurality of traffic groups are distributed to the plurality of nodes in a balanced manner, a backup group is created for each traffic group to obtain a plurality of backup groups;
the backup group to be distributed corresponding to any node is distributed to other nodes in a balanced mode, so that the load of each node is balanced, and any flow group and the backup group corresponding to the flow group are not in the same node; the backup group to be allocated is as follows: a backup group corresponding to the traffic group in the node and not assigned to other nodes.
Preferably, the allocating the plurality of traffic groups to the plurality of nodes in a balanced manner includes:
and if the total number of the traffic groups is integral multiple of the total number of the nodes, distributing the traffic groups to each node evenly.
Preferably, the allocating the plurality of traffic groups to the plurality of nodes in a balanced manner includes:
if the total number of the traffic groups is not integral multiple of the total number of the nodes, distributing one traffic group to each node and deleting nodes which are not distributed to the traffic groups under the condition that the total number of the nodes is greater than the total number of the traffic groups.
Preferably, the allocating the plurality of traffic groups to the plurality of nodes in a balanced manner includes:
if the total number of the traffic groups is not an integral multiple of the total number of the nodes, under the condition that the total number of the nodes is smaller than the total number of the traffic groups, after equal number of the traffic groups are evenly distributed to each node, randomly selecting optional nodes from all the nodes, and evenly distributing the remaining unallocated traffic groups to the optional nodes.
Preferably, the allocating the backup group to be allocated corresponding to any node to other nodes in a balanced manner, so that each node has balanced load and any traffic group and the backup group corresponding to the traffic group are not in the same node, includes:
aiming at any target node, dividing other nodes with the same number of the distributed backup groups into one class to obtain at least one class; the allocated backup group is: a backup group corresponding to the traffic group in the target node and allocated to other nodes;
determining the class with the least number of the distributed backup groups as a target class;
and if the total number of the nodes included in the target class is equal to the total number of the backup groups to be distributed corresponding to the target node, distributing the backup groups to be distributed corresponding to the target node to each node included in the target class in an average manner.
Preferably, the method further comprises the following steps:
if the total number of the nodes included in the target class is greater than the total number of the backup groups to be distributed corresponding to the target node, arranging all the nodes included in the target class according to the total number of the loads in an ascending order to obtain a node sequence; the total load is: the total number of backup groups and traffic groups in any node;
and starting from the first position of the node sequence, allocating a backup group to be allocated to a node until the backup group to be allocated corresponding to the target node is allocated, so that the relative balance of the load is realized, and the traffic group and the backup group do not conflict.
Preferably, the method further comprises the following steps:
if the total number of the nodes included in the target class is less than the total number of the backup groups to be allocated corresponding to the target node, after allocating a backup group to be allocated to each node included in the target class, executing the step of dividing other nodes with the same number of the allocated backup groups into one class to obtain at least one class; and determining the class with the least number of the allocated backup groups as a target class.
Preferably, after the balancing and allocating the backup group to be allocated corresponding to any node to other nodes, the method further includes:
if the total number of loads in different nodes is not equal, migrating a flow group and a backup group in each node according to a preset rule; the total load is: total number of backup groups and traffic groups in any one node.
Preferably, the migrating the traffic group and the backup group in each node according to the preset rule includes:
determining the node with the highest total load number in all nodes as the maximum node, and determining the node with the lowest total load number as the minimum node;
migrating any backup group or any traffic group in the maximum node to the minimum node; wherein, the traffic group corresponding to any migrated backup group is not in the minimum node, and the backup group corresponding to any migrated traffic group is not in the minimum node;
and if the difference between the total number of the loads in the maximum node and the minimum node is 1 after the migration, the migration is finished, so that the relative balance of the loads can be realized, and the traffic group and the backup group do not conflict.
Preferably, the method further comprises the following steps:
if the difference between the total loads of the maximum node and the minimum node is not 1 after the migration, determining the node with the highest total load among all the nodes as the maximum node and determining the node with the lowest total load as the minimum node; and migrating any backup group or any traffic group in the maximum node to the minimum node.
Preferably, the method further comprises the following steps:
if any node fails, all traffic groups in the failed node are determined as failure traffic groups, and backup groups corresponding to the failure traffic groups in other nodes are used for replacing the failure traffic groups.
Preferably, the method further comprises the following steps:
if any node fails, selecting the node with the least total load as the minimum node from all nodes which do not fail; the total load is: the total number of backup groups and traffic groups in any node;
migrating any backup group or any traffic group in the failed nodes to the minimum node; and the traffic group corresponding to any migrated backup group is not in the minimum node, and the backup group corresponding to any migrated traffic group is not in the minimum node.
Preferably, the method further comprises the following steps:
if the nodes with faults have backup groups or traffic groups which are not migrated, selecting the nodes with the least total load from all the nodes without faults as the minimum nodes; and migrating any backup group or any traffic group in the failed nodes to the minimum node.
In a second aspect, the present application provides a load balancing apparatus, including:
the system comprises a determining module, a judging module and a distributing module, wherein the determining module is used for determining a plurality of nodes capable of bearing traffic groups and a plurality of traffic groups to be distributed;
the traffic group distribution module is used for creating a backup group for each traffic group after the plurality of traffic groups are distributed to the plurality of nodes in a balanced manner to obtain a plurality of backup groups;
the backup group distribution module is used for distributing the backup groups to be distributed corresponding to any node to other nodes in a balanced manner so that the load of each node is balanced and any flow group and the backup group corresponding to the flow group are not in the same node; the backup group to be allocated is as follows: a backup group corresponding to the traffic group in the node and not assigned to other nodes.
In a third aspect, the present application provides an electronic device, comprising:
a memory for storing a computer program;
a processor for executing the computer program to implement the load balancing method disclosed in the foregoing.
In a fourth aspect, the present application provides a readable storage medium for storing a computer program, wherein the computer program, when executed by a processor, implements the load balancing method disclosed in the foregoing.
According to the above scheme, the present application provides a load balancing method, including: determining a plurality of nodes capable of bearing traffic groups and a plurality of traffic groups to be distributed; after the plurality of traffic groups are distributed to the plurality of nodes in a balanced manner, a backup group is created for each traffic group to obtain a plurality of backup groups; the backup group to be distributed corresponding to any node is distributed to other nodes in a balanced mode, so that the load of each node is balanced, and any flow group and the backup group corresponding to the flow group are not in the same node; the backup group to be allocated is as follows: a backup group corresponding to the traffic group in the node and not assigned to other nodes.
Therefore, the method and the device have the advantages that the plurality of traffic groups to be distributed are distributed to each node in a balanced mode, so that the service pressure actually borne by each node is balanced; then, the backup groups of each traffic group are distributed to each node in a balanced manner, so that after a certain traffic group or node fails, other nodes or corresponding backup groups can immediately continue to service, so that the service is not interrupted, the actual load on each node is relatively balanced, any traffic group and the backup group corresponding to the traffic group are not in the same node, the conflict between the traffic group and the corresponding backup group is avoided, and the probability of the simultaneous failure of the backup group and the corresponding traffic group is reduced.
Accordingly, the load balancing device, the equipment and the readable storage medium provided by the application also have the technical effects.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, it is obvious that the drawings in the following description are only embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a flow chart of a load balancing method disclosed in the present application;
FIG. 2 is a schematic diagram of a node disclosed herein;
FIG. 3 is a schematic diagram of deploying traffic groups in a node according to the disclosure;
fig. 4 is a schematic diagram of a balanced deployment traffic group and a backup group in a node according to the present disclosure;
FIG. 5 is a schematic diagram of a load balancing apparatus according to the present disclosure;
FIG. 6 is a schematic diagram of an electronic device disclosed herein;
FIG. 7 is a schematic view of another electronic device disclosed herein;
FIG. 8 is a schematic illustration of various nodes prior to assignment of F1-F5 as disclosed herein;
FIG. 9 is a schematic diagram of nodes ranked and ranked by the first tier of the present disclosure;
FIG. 10 is a schematic diagram of the nodes after the second tier ordering disclosed herein;
fig. 11 is a schematic diagram of nodes after one round of allocation as disclosed in the present application.
Detailed Description
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 of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
At present, the existing load balancing scheme only performs load balancing on the running services on each node, and does not consider the load size on different nodes after individual service failure. The solution is not flexible and precise enough, resulting in uneven load on each node after individual service failures. Therefore, the load balancing scheme is provided, and the flexibility and the accuracy of the load balancing scheme can be improved.
Referring to fig. 1, an embodiment of the present application discloses a load balancing method, including:
s101, determining a plurality of nodes capable of bearing traffic groups and a plurality of traffic groups to be distributed.
One traffic group is configured with information such as FIP (float IP) and VMAC (virtual physical address). One virtual service may correspond to one or more traffic groups. When a traffic group is bound to a certain Virtual service, the FIP configured in the traffic group can be regarded as a VIP (Virtual IP), which is an IP for use when the Virtual service is distributed.
The flow group specifically means: the relevant condition set carrying a set of traffic includes FIP, VMAC, port, etc. information.
The node means: and virtual equipment which bears the traffic group or the backup group and actually processes the traffic in the cloud native environment. Specifically, referring to fig. 2, in fig. 2, 4 nodes are virtualized based on one switch: the system comprises a node 1, a node 2, a node 3 and a node 4, wherein each node is provided with a flow group. The flow rate group is as follows: "VS-1 | VIP-1", "VS-2 | VIP-2", etc. in node 1.
S102, after the plurality of traffic groups are distributed to the plurality of nodes in a balanced mode, a backup group is created for each traffic group, and a plurality of backup groups are obtained.
In one embodiment, the evenly distributing the plurality of traffic groups to the plurality of nodes comprises:
and if the total number of the traffic groups is integral multiple of the total number of the nodes, distributing the traffic groups to each node evenly.
If the total number of the traffic groups is not integral multiple of the total number of the nodes, distributing one traffic group to each node and deleting the nodes which are not distributed to the traffic groups under the condition that the total number of the nodes is greater than the total number of the traffic groups.
If the total number of the traffic groups is not an integral multiple of the total number of the nodes, under the condition that the total number of the nodes is smaller than the total number of the traffic groups, after equal number of traffic groups are evenly distributed to each node, randomly selecting optional nodes from all the nodes, and evenly distributing the remaining unallocated traffic groups to the optional nodes. Namely: under the condition that the total number of the nodes is smaller than the total number of the traffic groups, calculating the ratio of the total number of the traffic groups to the total number of the nodes, rounding the ratio downwards to obtain a target value, distributing the target value traffic groups to each node, determining the number of the unassigned traffic groups, randomly selecting optional nodes equal to the number from all the nodes, and evenly distributing the unassigned traffic groups to the optional nodes.
Assuming 5 nodes, 5 traffic groups, then 1 traffic group is allocated per node. Assuming there are 5 nodes, 10 traffic groups, then each node is assigned 2 traffic groups. It can be seen that, in the case that the total number of traffic groups is an integer multiple of the total number of nodes, the traffic groups may be equally allocated to each node, so that the number of traffic groups carried by all nodes is the same.
In the case that the total number of traffic groups is not an integer multiple of the total number of nodes, the total number of traffic groups may be greater than the total number of nodes or may be smaller than the total number of nodes.
And under the condition that the total number of the nodes is greater than the total number of the traffic groups, allocating one traffic group for each node, and abandoning the nodes which are not allocated to the traffic groups. For example: there are 5 nodes, 4 traffic groups, and then 4 of them are each assigned 1 traffic group, and the remaining one node is empty, and the empty node is not used for the time being, so the node is deleted.
And under the condition that the total number of the nodes is less than the total number of the traffic groups, firstly calculating the lowest average value which can be allocated to each node, and redistributing the rest traffic groups. Assuming 5 nodes, 12 traffic groups, 12/5 is 2.4, rounding down to 2, and each node is assigned 2 traffic groups, and the remaining 2 traffic groups are randomly assigned to 2 of the 5 nodes.
S103, the backup groups to be distributed corresponding to any node are distributed to other nodes in a balanced mode, so that the load of each node is balanced, and any traffic group and the backup group corresponding to the traffic group are not located in the same node.
Wherein, the backup group to be allocated is: a backup group corresponding to the traffic group in the node and not assigned to other nodes.
It should be noted that any traffic group has a backup group. Namely: there are several traffic groups and there are several backup groups. The backup set for a traffic set is identical to the traffic set. In order to make the backup group and the corresponding traffic group backup each other and exert the backup effect, the backup group corresponding to one traffic group and the traffic group cannot be deployed in the same node. Only then, when the node where the traffic group is located fails, the corresponding backup group can exert backup effectiveness in other nodes. When a certain traffic group takes effect, the corresponding backup group does not take effect, that is: one traffic group and its corresponding backup group are alternately validated for use.
In a specific embodiment, the method for distributing backup groups to be distributed corresponding to any node to other nodes in a balanced manner so that each node has balanced load and any traffic group and the backup group corresponding to the traffic group are not in the same node includes: aiming at any target node, dividing other nodes with the same number of the distributed backup groups into one class to obtain at least one class; the assigned backup groups are: a backup group corresponding to the traffic group in the target node and allocated to the other nodes; determining the class with the least number of the distributed backup groups as a target class; and if the total number of the nodes included in the target class is equal to the total number of the backup groups to be distributed corresponding to the target node, averagely distributing the backup groups to be distributed corresponding to the target node to each node included in the target class.
If the total number of the nodes included in the target class is larger than the total number of the backup groups to be distributed corresponding to the target node, arranging all the nodes included in the target class according to the total number of the loads in an ascending order to obtain a node sequence; the total load is: the total number of backup groups and traffic groups in any node; starting from the first position of the node sequence, allocating a backup group to be allocated to a node until the backup group to be allocated corresponding to the target node is allocated.
If the total number of the nodes included in the target class is less than the total number of the backup groups to be distributed corresponding to the target node, after distributing a backup group to be distributed to each node included in the target class, dividing other nodes with the same number of the distributed backup groups into one class to obtain at least one class; and determining the class with the least number of the allocated backup groups as a target class, thereby realizing the circular allocation.
Referring to fig. 3, there are 5 nodes: A. b, C, D, E are provided. The node A comprises 2 traffic groups of A1 and A2; the node B comprises 2 traffic groups of B1 and B2; the node C comprises 2 traffic groups of C1 and C2; the node D comprises 2 traffic groups of D1 and D2; node E comprises 3 traffic groups of E1, E2 and E3. Thus, there are 11 traffic groups, and 11 backup groups corresponding to the 11 traffic groups also need to be allocated to the 5 nodes. Before the 11 backup groups are allocated, the backup group indication area is empty.
For node a, the backup group to be allocated corresponding to node a includes a1 'corresponding to a1 and a 2' corresponding to a2, and then where a1 'and a 2' are allocated? The nodes B, C, D, E except the node a are classified first, and no backup group corresponding to a1 or a2 exists in the current node B, C, D, E, so the node B, C, D, E can be classified into one class, and the number of the allocated backup groups included in the class is the minimum (0), so the class is the target class.
At this time, there are 4 nodes in the target class (i.e., B, C, D, E), and the total number of backup groups to be allocated is 2 (i.e., A1 'and A2'), i.e.: and if the total number of the nodes included in the target class is greater than the total number of the backup groups to be distributed, arranging all the nodes included in the target class according to the ascending order of the total number of the loads to obtain a node sequence: [ B, C, D, E ]. The total number of loads of B is 2, the total number of loads of C is 2, the total number of loads of D is 2, and the total number of loads of E is 3. Then, starting from the first position of the node sequence (namely: node B), a backup group to be allocated is allocated to a node until the backup group to be allocated is allocated. That is: assigning a1 'to B and a 2' to C, thereby completing the assignment of a1 'and a 2'.
It is assumed that the subsequent allocation of the backup group to be allocated is made to the node B. After the above allocation, the node B includes: b1, B2, a 1'; node C includes C1, C2, A2'. The load of the other nodes does not change. At this time, the backup group to be allocated corresponding to the node B includes B1 'corresponding to B1 and B2' corresponding to B2, then where B1 'and B2' are allocated? The nodes A, C, D, E except the node B are classified first, and no backup group corresponding to B1 or B2 exists in the current node A, C, D, E, so the node A, C, D, E can be classified into one class, and the class includes the least number of allocated backup groups (0), so the class is the target class.
At this time, there are 4 nodes in the target class (i.e., A, C, D, E), and the total number of backup groups to be allocated is 2 (i.e., B1 'and B2'), i.e.: and if the total number of the nodes included in the target class is greater than the total number of the backup groups to be distributed, arranging all the nodes included in the target class according to the ascending order of the total number of the loads to obtain a node sequence: [ A, D, C, E ]. The total number of loads of a is 2, the total number of loads of D is 2, the total number of loads of C is 3, and the total number of loads of E is 3. Then, starting from the first position of the node sequence (namely: node A), a backup group to be allocated is allocated to a node until the backup group to be allocated is allocated. That is: b1 'was assigned to a and B2' was assigned to D, thereby completing the assignment of a1 'and a 2'.
Referring to fig. 4, assume that the subsequent assignment of the backup group to be assigned is made to node C, D, E. After the final allocation is completed, the load results presented may be:
the node A comprises: 4 loads of A1, A2, B1 'and C1';
node B comprises 5 loads of B1, B2, A1 ', C2 ' and E3 ';
node C comprises 5 loads of C1, C2, A2 ', D1 ' and E2 ';
the node D comprises 4 loads of D1, D2, B2 'and E1';
node E includes 4 loads, E1, E2, E3 and D2'.
Therefore, the load number of the most loaded node and the least loaded node is 1, so that the relative balance of the loads is realized, and the traffic group and the backup group do not conflict.
When the nodes are arranged according to the total load number, the arrangement positions of different nodes with the same total load number can be interchanged, and the realization of the embodiment is not affected after the interchange.
As can be seen, in this embodiment, a plurality of traffic groups to be distributed are first distributed to each node in a balanced manner, so that the service pressures actually borne by each node are balanced; then, the backup groups of each traffic group are distributed to each node in a balanced manner, so that after a certain traffic group or node fails, other nodes or corresponding backup groups can immediately continue to service, so that the service is not interrupted, the actual load on each node is relatively balanced, any traffic group and the backup group corresponding to the traffic group are not in the same node, the conflict between the traffic group and the corresponding backup group is avoided, and the probability of the simultaneous failure of the backup group and the corresponding traffic group is reduced.
Based on the above embodiment, it should be noted that after the to-be-allocated backup group corresponding to any node is allocated to other nodes in a balanced manner, the method further includes: if the total number of loads in different nodes is not equal, migrating a flow group and a backup group in each node according to a preset rule; the total load is: total number of backup groups and traffic groups in any one node.
Wherein, migrating the traffic group and the backup group in each node according to a preset rule comprises:
determining the node with the highest total load number in all nodes as the maximum node, and determining the node with the lowest total load number as the minimum node; migrating any backup group or any flow group in the maximum node to the minimum node; the traffic group corresponding to any migrated backup group is not in the minimum node, and the backup group corresponding to any migrated traffic group is not in the minimum node; and if the difference of the total loads in the maximum node and the minimum node is 1 after the migration, the migration is finished. If the difference between the total loads of the maximum node and the minimum node is not 1 after the migration, determining the node with the highest total load among all nodes as the maximum node and determining the node with the lowest total load as the minimum node; and migrating any backup group or any flow group in the maximum node to the minimum node to realize the cyclic execution of the migration step. When the total load number difference between the maximum node and the minimum node is 1, the relative balance of the load is realized, and the traffic group and the backup group do not conflict.
Based on the foregoing embodiments, it should be noted that, if any node fails, it is necessary to migrate each load in the failed node to other normal nodes, and at the same time, use the backup group corresponding to the failed traffic group in other nodes to replace the failed traffic group to continue running the relevant virtual service.
In a specific embodiment, if any node fails, all traffic groups in the failed node are determined as a failed traffic group, and a backup group corresponding to the failed traffic group in other nodes is used to replace the failed traffic group, so as to ensure that the virtual service is not interrupted.
In a specific embodiment, if any node fails, selecting a node with the least total load from all nodes which do not fail as a minimum node; the total load is: the total number of backup groups and traffic groups in any node; migrating any backup group or any flow group in the failed nodes to the minimum node; the traffic group corresponding to any migrated backup group is not in the minimum node, and the backup group corresponding to any migrated traffic group is not in the minimum node; if the nodes with faults have backup groups or traffic groups which are not migrated, selecting the nodes with the least total load from all the nodes without faults as the minimum nodes; and migrating any backup group or any traffic group in the failed nodes to the minimum node until no backup group or traffic group which is not migrated exists in the failed nodes.
Therefore, in the process of migrating each load in a failed node to other normal nodes, it is still necessary to avoid the conflict between the traffic group and the corresponding backup group, so as to reduce the probability of simultaneous failure of the backup group and the corresponding traffic group.
Based on the above embodiment, it should be noted that, if a node is newly added, the newly added node is added to all nodes, and the node with the highest total load among all nodes is determined as the largest node, and the node with the lowest total load is determined as the smallest node; migrating any backup group or any flow group in the maximum node to the minimum node; if the difference between the total loads of the maximum node and the minimum node is 1 after the migration, the migration is finished; otherwise, determining the node with the most total load in all nodes as the maximum node, and determining the node with the least total load as the minimum node; and migrating any backup group or any flow group in the maximum node to the minimum node until the difference between the total loads in the maximum node and the minimum node is 1, so that the relative balance of the loads is realized, and the flow group and the backup group do not conflict.
Therefore, after the new node is added, the new node is used to share the load in the original node, and in the process, the conflict between the traffic group and the corresponding backup group still needs to be avoided, so as to reduce the probability of the simultaneous failure of the backup group and the corresponding traffic group.
In the following, a load balancing apparatus provided in an embodiment of the present application is introduced, and a load balancing apparatus described below and a load balancing method described above may be referred to each other.
Referring to fig. 5, an embodiment of the present application discloses a load balancing apparatus, including:
a determining module 501, configured to determine multiple nodes capable of bearing traffic groups and multiple traffic groups to be allocated;
a traffic group allocation module 502, configured to create a backup group for each traffic group after a plurality of traffic groups are allocated to a plurality of nodes in a balanced manner, so as to obtain a plurality of backup groups;
a backup group allocation module 503, configured to allocate a backup group to be allocated corresponding to any node to other nodes in a balanced manner, so that each node has a balanced load and any traffic group and the backup group corresponding to the traffic group are not in the same node; the backup group to be allocated is: a backup group corresponding to the traffic group in the node and not assigned to other nodes.
In a specific embodiment, the traffic group assignment module is specifically configured to:
and if the total number of the traffic groups is integral multiple of the total number of the nodes, distributing the traffic groups to each node evenly.
In a specific embodiment, the traffic group assignment module is specifically configured to:
if the total number of the traffic groups is not integral multiple of the total number of the nodes, distributing one traffic group to each node and deleting nodes which are not distributed to the traffic groups under the condition that the total number of the nodes is greater than the total number of the traffic groups.
In a specific embodiment, the traffic group assignment module is specifically configured to:
if the total number of the traffic groups is not an integral multiple of the total number of the nodes, under the condition that the total number of the nodes is smaller than the total number of the traffic groups, after equal number of traffic groups are evenly distributed to each node, randomly selecting optional nodes from all the nodes, and evenly distributing the remaining unallocated traffic groups to the optional nodes.
In one embodiment, the backup group assignment module comprises:
the dividing unit is used for dividing other nodes with the same number of the distributed backup groups into one class aiming at any one target node to obtain at least one class; the assigned backup groups are: a backup group corresponding to the traffic group in the target node and allocated to the other nodes;
the determining unit is used for determining the class with the minimum number of the distributed backup groups as a target class;
and the first allocation unit is used for averagely allocating the backup groups to be allocated corresponding to the target node to each node included in the target class if the total number of the nodes included in the target class is equal to the total number of the backup groups to be allocated corresponding to the target node.
In one embodiment, the backup group assignment module further comprises:
the sequencing unit is used for sequencing all the nodes included by the target class according to the total number of the loads in an ascending order to obtain a node sequence if the total number of the nodes included by the target class is greater than the total number of the backup groups to be distributed corresponding to the target node; the total load is: the total number of backup groups and traffic groups in any node;
and the second distribution unit is used for distributing a backup group to be distributed to a node from the first position of the node sequence until the backup group to be distributed corresponding to the target node is distributed, so that the relative balance of the load is realized, and the flow group and the backup group do not conflict.
In one embodiment, the backup group assignment module further comprises:
the third allocation unit is used for allocating a backup group to be allocated to each node included in the target class if the total number of the nodes included in the target class is less than the total number of the backup groups to be allocated corresponding to the target node, and then executing the step of dividing other nodes including the same number of the allocated backup groups into one class to obtain at least one class; and determining the class with the least number of the allocated backup groups as a target class.
In a specific embodiment, the method further comprises the following steps:
the load balancing module is used for migrating the flow groups and the backup groups in each node according to a preset rule if the total number of loads in different nodes is different; the total load is: total number of backup groups and traffic groups in any one node.
In one embodiment, the load balancing module includes:
a node determining unit, configured to determine a node with the largest total load among all nodes as a largest node, and determine a node with the smallest total load as a smallest node;
the migration unit is used for migrating any backup group or any flow group in the maximum node to the minimum node; the traffic group corresponding to any migrated backup group is not in the minimum node, and the backup group corresponding to any migrated traffic group is not in the minimum node;
and the detection unit is used for ending the migration if the difference between the total number of the loads in the maximum node and the minimum node is 1 after the migration, so that the relative balance of the loads can be realized, and the traffic group and the backup group do not conflict.
In a specific embodiment, the load balancing module further includes:
the cyclic execution unit is used for determining the node with the highest total load number in all the nodes as the maximum node and determining the node with the lowest total load number as the minimum node if the difference between the total load numbers in the maximum node and the minimum node is not 1 after the migration; and migrating any backup group or any traffic group in the maximum node to the minimum node.
In a specific embodiment, the method further comprises the following steps:
and the service continuing module is used for determining all the traffic groups in the failed nodes as the failed traffic groups and replacing the failed traffic groups with backup groups corresponding to the failed traffic groups in other nodes if any node fails.
In a specific embodiment, the method further comprises the following steps:
the post-fault migration module is used for selecting the node with the least total load as the minimum node from all the nodes which do not have faults if any node has faults; the total load is: the total number of backup groups and traffic groups in any node; migrating any backup group or any flow group in the failed nodes to the minimum node; and the backup group corresponding to any migrated traffic group is not in the minimum node.
In one embodiment, the post-failure migration module is further configured to:
if the nodes with faults have backup groups or traffic groups which are not migrated, selecting the nodes with the least total load from all the nodes without faults as the minimum nodes; and migrating any backup group or any traffic group in the failed nodes to the minimum node.
For more specific working processes of each module and unit in this embodiment, reference may be made to corresponding contents disclosed in the foregoing embodiments, and details are not described here again.
It can be seen that this embodiment provides a load balancing apparatus, which can relatively balance actual loads on each node, and at the same time, any traffic group and the backup group corresponding to the traffic group are not in the same node, thereby avoiding a conflict between the traffic group and the corresponding backup group, and reducing the probability of a simultaneous failure between the backup group and the corresponding traffic group.
In the following, an electronic device provided by an embodiment of the present application is introduced, and an electronic device described below and a load balancing method and device described above may be referred to each other.
Referring to fig. 6, an embodiment of the present application discloses an electronic device, including:
a memory 601 for storing a computer program;
a processor 602 for executing the computer program to implement the method disclosed in any of the embodiments above.
Referring to fig. 7, fig. 7 is a schematic diagram of another electronic device provided in this embodiment, which may have a larger difference due to different configurations or performances, and may include one or more processors (CPUs) 322 (e.g., one or more processors) and a memory 332, and one or more storage media 330 (e.g., one or more mass storage devices) storing an application 342 or data 344. Memory 332 and storage media 330 may be, among other things, transient storage or persistent storage. The program stored on the storage medium 330 may include one or more modules (not shown), each of which may include a series of instructions operating on a data processing device. Still further, the central processor 322 may be configured to communicate with the storage medium 330 to execute a series of instruction operations in the storage medium 330 on the electronic device 301.
The electronic device 301 may also include one or more power sources 326, one or more wired or wireless network interfaces 350, one or more input-output interfaces 358, and/or one or more operating systems 341. Such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
In fig. 7, the application 342 may be a program that performs a load balancing method, and the data 344 may be data required or generated to perform the load balancing method.
The steps in the load balancing method described above may be implemented by the structure of the electronic device.
In the following, a readable storage medium provided by an embodiment of the present application is introduced, and a readable storage medium described below and a load balancing method, apparatus, and device described above may be referred to each other.
A readable storage medium for storing a computer program, wherein the computer program when executed by a processor implements the load balancing method disclosed in the foregoing embodiments. For the specific steps of the method, reference may be made to the corresponding contents disclosed in the foregoing embodiments, which are not described herein again.
A load balancing scheme provided in the embodiments of the present application is introduced below, and a load balancing scheme described below and a load balancing method, device, and apparatus described above may be referred to each other.
Firstly, configuring virtual services.
At least one traffic group is correspondingly configured for one virtual service, so that a plurality of traffic groups needing to be distributed are obtained. One flow group configures one FIP.
For a virtual service, all traffic for that service can be considered to be divided into equal parts by FIP (i.e., traffic group). The multi-FIP can further subdivide the flow, and the pressure can be more evenly distributed to other nodes when the nodes are off-line.
And secondly, distributing the flow groups.
Assume that there are currently N nodes, M FIPs (i.e., each traffic group to be allocated). Each node is allocated with M/N FIPs at least and M/N +1 FIPs at most, so that the number of FIPs on different nodes is different by no more than 1. Wherein, M% N node allocation can allocate M/N +1 FIPs.
When 1 node is newly added, the FIP needs to be uniformly distributed from other nodes; when 1 node is deleted, FIPs on the deleted node need to be allocated to other nodes.
Since the FIPs cannot be recycled after being allocated, in order to simplify the logic, all available FIPs are directly allocated to all virtual services in the system construction stage, so as to directly allocate traffic groups to each node.
Generally, M FIPs support at most M nodes. Ideally, N nodes require N (N-1) FIPs.
And thirdly, balancing the flow groups.
And counting the number of the flow groups in all the nodes, taking the node with the maximum number of the flow groups as a maximum node, and taking the node with the minimum number of the flow groups as a minimum node.
And selecting a flow group from the maximum nodes, migrating the flow group to the minimum node, and re-determining the maximum node and the minimum node after migration is completed until the difference between the number of the flow groups on the minimum node and the maximum node is not more than 1.
If the traffic group selected from the maximum node corresponds to a backup group in the minimum node, directly designating the traffic group in the maximum node as the backup group, and designating the backup group corresponding to the traffic group in the minimum node as the traffic group, that is: the backup group is exchanged with the traffic group identity. Of course, migration of such traffic groups may also be avoided, such that the backup group and the traffic group do not need to be identity exchanged.
And fourthly, balancing the backup groups.
One backup group is set for each traffic group. The backup group is not deployed in the same node with the corresponding traffic group, and can be distributed to any other node.
When any node is offline, all traffic groups on the node are immediately switched to corresponding backup groups, and all traffic groups on the node are distributed to other nodes.
All backup groups corresponding to traffic groups in one node need to be evenly distributed to other nodes.
When a backup group is allocated, it is required to ensure that total traffic on different nodes needs to be balanced after a single node is offline to cause the backup group to take effect, and at this time, the number of effective traffic groups on each node needs to be considered.
All backup groups corresponding to any one node are allocated as follows.
Assuming that there are nodes: n1, N2, N3, N4, N5, N6, record the traffic groups on the N1-N5 nodes as "number of node id/backup group containing N6 (i.e. assigned backup group corresponding to N6 node)/total load number", then there are: n1/2/4, N2/0/5, N3/2/2, N4/0/3 and N5/3/4. For example: n1/2/4 denotes: the N1 node has 2N 6 corresponding distributed backup groups, and the N1 node has 4 loads.
Referring to fig. 8, there are 4 loads on the N1 nodes, of which the shaded 2 are the assigned backup groups corresponding to N6. There are 5 loads on the N2 node, and there are no assigned backup groups corresponding to N6. There are 2 loads on the N3 node, these 2 are all the assigned backup groups for N6. There are 3 loads on the N4 node, and there are no assigned backup groups corresponding to N6. There are 4 loads on the N5 node, of which the shaded 3 are the assigned backup groups for N6.
First, arrange N1-N5 in a first layer, i.e.: sorting N1-N5 from small to large according to the number of the allocated backup groups corresponding to N6 contained in the backup groups, and then, sorting the backup groups into the following sequences: [ N2/0/5, N4/0/3, N1/2/4, N3/2/2, N5/3/4 ]. The bold numbers are the arrangement basis. The first layer of ordering can avoid that backup groups corresponding to the same node are concentrated on one device.
And grouped by second layer N1-N5. N2, N4 containing 0 assigned backup groups are divided into a first level, N1, N3 containing 2 assigned backup groups are divided into a second level, and N5 is the third level, as shown in fig. 9.
In either level, the nodes are arranged in ascending order of total number of loads. Then the first level corresponds to the sequence: [ N4/0/3, N2/0/5 ]; the second level corresponds to the sequence: [ N3/2/2, N1/2/4 ]; the third level corresponds to the sequence: [ N5/3/4 ]. The bold numbers are the arrangement basis. The second-layer sequencing can avoid uneven load number on each node after a single node is offline. The second layer is ordered as shown in fig. 10.
Suppose that the backup group to be allocated corresponding to N6 also has: 5 of F1, F2, F3, F4 and F5. Then N4 and N2 are first assigned one backup group to be assigned, respectively. Assume that F1 is assigned to N4 and F2 is assigned to N2. After the round of distribution is completed, N4 is changed to N4/1/4, and N2 is changed to N2/1/6, as shown in FIG. 11.
At this time, the N1-N5 are processed in accordance with the first-tier ranking and the second-tier ranking, so that the nodes belonging to the first rank are newly determined, and thus the F3, F4, and F5 are assigned to the nodes in the newly determined first rank.
In this example, the next time a node belonging to the first level is also: n4 and N2, then F3 is assigned to N4 and F4 is assigned to N2. After allocation, N4 was changed to N4/2/5 and N2 was changed to N2/2/7.
Accordingly, the next node belonging to the first level is: n3/2/2, N1/2/4, N4/2/5, N2/2/7, then F5 is assigned to N3. Finally, the load situation on each node is: n3/3/3, N1/2/4, N4/2/5, N2/2/7 and N5/3/2.
According to the above example, the to-be-allocated backup groups corresponding to other nodes are continuously allocated until the to-be-allocated backup group list is completely allocated.
According to the embodiment, the loads on the nodes are balanced, so that the difference of the number of the loads on different nodes is not more than 1. The backup groups and the traffic groups are sorted together and then balanced, so that the actual load on each node (namely the traffic group or the backup group running the virtual service) can be balanced after the nodes are offline. At this time, the total load number on each node may not be balanced, because the nodes with less traffic groups receive the backup groups of other nodes preferentially, and finally the total load number is larger.
Therefore, the embodiment can dynamically adjust the pressure of each node (the node is a virtualized node) according to the actual flow pressure, can ensure that the node is automatically switched to a proper node no matter a service fault or a load node fault occurs, can also ensure flow balance, avoids the abnormal condition of pressure overload of a certain node, and ensures the continuity of the service. Therefore, the embodiment can realize the balanced distribution of the service flow among the nodes, when a certain node is abnormal, the flow can be automatically migrated to other nodes, the service operation is not influenced, and meanwhile, the requirement of flow balance among the nodes is met.
References in this application to "first," "second," "third," "fourth," etc., if any, are intended to distinguish between similar elements and not necessarily to describe a particular order or sequence. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that the embodiments described herein may be practiced otherwise than as specifically illustrated or described herein. Furthermore, the terms "comprises" and "comprising," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, 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, or apparatus.
It should be noted that the descriptions in this application referring to "first", "second", etc. are for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In addition, technical solutions between various embodiments may be combined with each other, but must be realized by a person skilled in the art, and when the technical solutions are contradictory or cannot be realized, such a combination should not be considered to exist, and is not within the protection scope of the present application.
The embodiments are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same or similar parts among the embodiments are referred to each other.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of readable storage medium known in the art.
The principle and the implementation of the present application are explained herein by applying specific examples, and the above description of the embodiments is only used to help understand the method and the core idea of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.
Claims (16)
1. A method of load balancing, comprising:
determining a plurality of nodes capable of bearing traffic groups and a plurality of traffic groups to be distributed;
after the plurality of traffic groups are distributed to the plurality of nodes in a balanced manner, a backup group is created for each traffic group to obtain a plurality of backup groups;
the backup group to be distributed corresponding to any node is distributed to other nodes in a balanced mode, so that the load of each node is balanced, and any flow group and the backup group corresponding to the flow group are not in the same node; the backup group to be allocated is as follows: a backup group corresponding to the traffic group in the node and not assigned to other nodes.
2. The method of claim 1, wherein the evenly distributing the plurality of traffic groups to the plurality of nodes comprises:
and if the total number of the traffic groups is integral multiple of the total number of the nodes, distributing the traffic groups to each node evenly.
3. The method of claim 1, wherein the evenly distributing the plurality of traffic groups to the plurality of nodes comprises:
if the total number of the traffic groups is not integral multiple of the total number of the nodes, distributing one traffic group to each node and deleting nodes which are not distributed to the traffic groups under the condition that the total number of the nodes is greater than the total number of the traffic groups.
4. The method of claim 1, wherein the evenly distributing the plurality of traffic groups to the plurality of nodes comprises:
if the total number of the traffic groups is not an integral multiple of the total number of the nodes, under the condition that the total number of the nodes is smaller than the total number of the traffic groups, after equal number of the traffic groups are evenly distributed to each node, randomly selecting optional nodes from all the nodes, and evenly distributing the remaining unallocated traffic groups to the optional nodes.
5. The method according to claim 1, wherein the allocating the backup group to be allocated corresponding to any node to other nodes in a balanced manner, so that each node has a balanced load and any traffic group and the backup group corresponding to the traffic group are not in the same node, comprises:
aiming at any target node, dividing other nodes with the same number of the distributed backup groups into one class to obtain at least one class; the allocated backup group is: a backup group corresponding to the traffic group in the target node and allocated to other nodes;
determining the class with the least number of the distributed backup groups as a target class;
and if the total number of the nodes included in the target class is equal to the total number of the backup groups to be distributed corresponding to the target node, distributing the backup groups to be distributed corresponding to the target node to each node included in the target class in an average manner.
6. The method of claim 5, further comprising:
if the total number of the nodes included in the target class is greater than the total number of the backup groups to be distributed corresponding to the target node, arranging all the nodes included in the target class according to the total number of the loads in an ascending order to obtain a node sequence; the total load is: the total number of backup groups and traffic groups in any node;
and from the first position of the node sequence, allocating a backup group to be allocated to a node until the backup group to be allocated corresponding to the target node is allocated.
7. The method of claim 5, further comprising:
if the total number of the nodes included in the target class is less than the total number of the backup groups to be allocated corresponding to the target node, after allocating a backup group to be allocated to each node included in the target class, executing the step of dividing other nodes with the same number of the allocated backup groups into one class to obtain at least one class; and determining the class with the least number of the allocated backup groups as a target class.
8. The method according to any one of claims 1 to 7, wherein after the allocating the backup groups to be allocated corresponding to any one node to other nodes in a balanced manner, the method further comprises:
if the total number of loads in different nodes is not equal, migrating a flow group and a backup group in each node according to a preset rule; the total load is: total number of backup groups and traffic groups in any one node.
9. The method according to claim 8, wherein migrating the traffic group and the backup group in each node according to a preset rule comprises:
determining the node with the highest total load number in all nodes as the maximum node, and determining the node with the lowest total load number as the minimum node;
migrating any backup group or any traffic group in the maximum node to the minimum node; wherein, the traffic group corresponding to any migrated backup group is not in the minimum node, and the backup group corresponding to any migrated traffic group is not in the minimum node;
and if the difference of the total loads in the maximum node and the minimum node is 1 after the migration, the migration is finished.
10. The method of claim 9, further comprising:
if the difference between the total loads of the maximum node and the minimum node is not 1 after the migration, determining the node with the highest total load among all the nodes as the maximum node and determining the node with the lowest total load as the minimum node; and migrating any backup group or any traffic group in the maximum node to the minimum node.
11. The method of any one of claims 1 to 7, further comprising:
if any node fails, all traffic groups in the failed node are determined as failure traffic groups, and backup groups corresponding to the failure traffic groups in other nodes are used for replacing the failure traffic groups.
12. The method of any one of claims 1 to 7, further comprising:
if any node fails, selecting the node with the least total load as the minimum node from all nodes which do not fail; the total load is: the total number of backup groups and traffic groups in any node;
migrating any backup group or any traffic group in the failed nodes to the minimum node; and the traffic group corresponding to any migrated backup group is not in the minimum node, and the backup group corresponding to any migrated traffic group is not in the minimum node.
13. The method of claim 12, further comprising:
if the nodes with faults have backup groups or traffic groups which are not migrated, selecting the nodes with the least total load from all the nodes without faults as the minimum nodes; and migrating any backup group or any traffic group in the failed nodes to the minimum node.
14. A load balancing apparatus, comprising:
the system comprises a determining module, a judging module and a distributing module, wherein the determining module is used for determining a plurality of nodes capable of bearing traffic groups and a plurality of traffic groups to be distributed;
the traffic group distribution module is used for creating a backup group for each traffic group after the plurality of traffic groups are distributed to the plurality of nodes in a balanced manner to obtain a plurality of backup groups;
the backup group distribution module is used for distributing the backup groups to be distributed corresponding to any node to other nodes in a balanced manner so that the load of each node is balanced and any flow group and the backup group corresponding to the flow group are not in the same node; the backup group to be allocated is as follows: a backup group corresponding to the traffic group in the node and not assigned to other nodes.
15. An electronic device, comprising:
a memory for storing a computer program;
a processor for executing the computer program to implement the load balancing method of any one of claims 1 to 13.
16. A readable storage medium storing a computer program, wherein the computer program when executed by a processor implements the load balancing method of any one of claims 1 to 13.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111166677.9A CN113867964A (en) | 2021-09-30 | 2021-09-30 | Load balancing method, device, equipment and readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111166677.9A CN113867964A (en) | 2021-09-30 | 2021-09-30 | Load balancing method, device, equipment and readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113867964A true CN113867964A (en) | 2021-12-31 |
Family
ID=79001699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111166677.9A Pending CN113867964A (en) | 2021-09-30 | 2021-09-30 | Load balancing method, device, equipment and readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113867964A (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1554055A (en) * | 2001-07-23 | 2004-12-08 | �Ƚ�װ�ù�˾ | High-availability cluster virtual server system |
CN103077088A (en) * | 2013-01-17 | 2013-05-01 | 浙江大学 | Method for balancing dynamic feedback load based on PKDT (Prediction KD Tree) in cluster rendering environment |
CN105141445A (en) * | 2015-07-24 | 2015-12-09 | 广州尚融网络科技有限公司 | Method and device for realizing multiple backups of multiple flow groups in high-availability cluster system |
CN108733516A (en) * | 2018-05-25 | 2018-11-02 | 浙江工商大学 | Cloudy secure storage dynamic equilibrium backup method and system |
CN111866210A (en) * | 2020-07-08 | 2020-10-30 | 苏州浪潮智能科技有限公司 | Virtual IP balance distribution method, system, terminal and storage medium |
CN112346892A (en) * | 2021-01-06 | 2021-02-09 | 全时云商务服务股份有限公司 | MQ load balancing method, device, equipment and storage medium |
-
2021
- 2021-09-30 CN CN202111166677.9A patent/CN113867964A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1554055A (en) * | 2001-07-23 | 2004-12-08 | �Ƚ�װ�ù�˾ | High-availability cluster virtual server system |
CN103077088A (en) * | 2013-01-17 | 2013-05-01 | 浙江大学 | Method for balancing dynamic feedback load based on PKDT (Prediction KD Tree) in cluster rendering environment |
CN105141445A (en) * | 2015-07-24 | 2015-12-09 | 广州尚融网络科技有限公司 | Method and device for realizing multiple backups of multiple flow groups in high-availability cluster system |
CN108733516A (en) * | 2018-05-25 | 2018-11-02 | 浙江工商大学 | Cloudy secure storage dynamic equilibrium backup method and system |
CN111866210A (en) * | 2020-07-08 | 2020-10-30 | 苏州浪潮智能科技有限公司 | Virtual IP balance distribution method, system, terminal and storage medium |
CN112346892A (en) * | 2021-01-06 | 2021-02-09 | 全时云商务服务股份有限公司 | MQ load balancing method, device, equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220027189A1 (en) | System and Method for Optimizing Placements of Virtual Machines on Hypervisor Hosts | |
CN108780386B (en) | Data storage method, device and system | |
CN107924328B (en) | Technique for selecting virtual machine for migration | |
US9633040B2 (en) | Distributed processing system including a name node and a plurality of data nodes, and method of operating the same | |
CN110098946B (en) | Method and device for deploying virtualized network element equipment | |
US8185905B2 (en) | Resource allocation in computing systems according to permissible flexibilities in the recommended resource requirements | |
KR100847610B1 (en) | Dynamically configurable fault tolerance in autonomic computing with multiple service points | |
CN108881512B (en) | CTDB virtual IP balance distribution method, device, equipment and medium | |
US11755385B2 (en) | Cross-cluster load balancer | |
CN111078369B (en) | Virtual machine distribution method and device under cloud computer and server | |
CN111459677A (en) | Request distribution method and device, computer equipment and storage medium | |
CN108279979B (en) | Method and device for binding CPU for application program container | |
CN110519406B (en) | Virtual address allocation method and device, CTDB cluster and storage medium | |
CN106133693A (en) | The moving method of virtual machine, device and equipment | |
CN114174993A (en) | Optimizing cluster applications in a cluster infrastructure | |
EP3442201B1 (en) | Cloud platform construction method and cloud platform | |
US11150930B2 (en) | Autonomic management of multi-site cloud infrastructure | |
WO2010097312A1 (en) | Non-uniform memory access (numa) enhancements for shared logical partitions | |
US20160357647A1 (en) | Computer, hypervisor, and method for allocating physical cores | |
CN114625500B (en) | Topology-aware microservice application scheduling method and application in cloud environment | |
CN111866210A (en) | Virtual IP balance distribution method, system, terminal and storage medium | |
Vdovin et al. | Comparing various approaches to resource allocation in data centers | |
CN114285729B (en) | Distributed cluster management node deployment method, device, equipment and storage medium | |
CN111338778B (en) | Task scheduling method and device, storage medium and computer equipment | |
CN117130723A (en) | Determination method and device of allocation information, computer equipment and storage medium |
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 |