CN102497421A - Web server cluster system round-robin scheduling load balancing method with good fairness - Google Patents

Web server cluster system round-robin scheduling load balancing method with good fairness Download PDF

Info

Publication number
CN102497421A
CN102497421A CN2011104108562A CN201110410856A CN102497421A CN 102497421 A CN102497421 A CN 102497421A CN 2011104108562 A CN2011104108562 A CN 2011104108562A CN 201110410856 A CN201110410856 A CN 201110410856A CN 102497421 A CN102497421 A CN 102497421A
Authority
CN
China
Prior art keywords
server
web
round
weights
request
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.)
Granted
Application number
CN2011104108562A
Other languages
Chinese (zh)
Other versions
CN102497421B (en
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.)
Henan University of Science and Technology
Hunan University of Science and Technology
Original Assignee
Hunan University of Science and Technology
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 Hunan University of Science and Technology filed Critical Hunan University of Science and Technology
Priority to CN201110410856.2A priority Critical patent/CN102497421B/en
Publication of CN102497421A publication Critical patent/CN102497421A/en
Application granted granted Critical
Publication of CN102497421B publication Critical patent/CN102497421B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

The invention discloses a Web server cluster system round-robin scheduling load balancing method with good fairness. A server scheduling module distributes load for each server according to the minimum residual weight in an active server in each round. Due to the fact that the minimum residual weight is not fixed, the minimum residual weight is selected again before each round starts, thereby having good fairness and being capable of achieving effective load balancing. On the basis of being easy to achieve the round-robin scheduling method, the Web server cluster system round-robin scheduling load balancing method improves the fairness of the Web server cluster system, particularly avoids a situation that a server with low weight can not be used for a long time, and has the advantages of being low in complex degree, high in efficiency and easy to achieve.

Description

The Web server group system polling dispatching load-balancing method that fairness is good
Technical field
The invention belongs to the cluster server technical field, relate in particular to the good Web server group system polling dispatching load-balancing method of a kind of fairness.
Background technology
Along with popularizing of development of internet technology and computer, the scale of network constantly enlarges, and number of applications is all being carried out round network, has promoted the quick growth of Internet number of users and flow.Simultaneously; Progress at full speed along with network hardware equipment; The bottleneck effect of the network bandwidth weakens day by day, and the performance issue of Web server displays gradually, because single server system is handled the limited in one's ability of client requests; When the number of concurrent visit is more and more; Will cause the load of Web server to increase the weight of even collapse, the high load capacity problem of visible how settlement server, to handle the client requests that increases fast be the problem that can't avoid, and the high-performance of Web service, high available problem have become the focus of Web service area research.See from present research direction; Server side to research can be summed up as two aspects: the load capacity that improves server through server hardware performances such as simple lifting processors is more direct solution, and this is to start with from realization mechanism, mainly studies Caching technology, prefetching technique etc.; Behavior is analyzed to client access in addition; Research can be dwindled the method for response time, and these technology can improve the performance of system as much as possible on the basis of existing server apparatus, but the degree that performance improves is limited; Simultaneously also can bring bigger expense; Comprising expensive server hardware, can't protect aspects such as existing investment, is no small burdens for medium-sized and small enterprises.Another kind of solution is a cluster thought; This is to start with from architecture; The server architecture that past is single is extended for the cluster server structure, uses multiple servers to form group system service is provided, and makes their common sharing system load through certain mechanism; This structure does not have too high performance requirement to single server, but can significantly improve the overall performance of server.As far as the user, whole system is a single logical server seemingly, and such system can provide stronger extensibility, throughput performance and high reliability preferably.
By contrast; The Web server group system is the effective way that solves current Web service performance problem; It with user's request according to going on load balancing strategy distribution certain station server in the cluster; Through the request of the collaborative work parallel processing of user between the server, thereby improve running efficiency of system, improve the performance of whole system.But, the heterogeneous server group system more is of practical significance than isomorphism server cluster system, but it is much bigger to implement difficulty.For realizing a Heterogeneous Web server cluster system efficiently, must solve many problems, load balancing is exactly one of key issue wherein, and other aspects also comprise request distribution, fault-toleranr technique etc.For the Heterogeneous Web server cluster system; Each Web server performance is different; Various load-balancing methods will cause that each Web server externally shows difference in the system, simultaneously, also in fact determine the height of Web server group system performance; When the load of each Web server in the Web server group system was at equilibrium, the efficient that request distributes was the highest.Therefore, can come the distribution of control load, make the load allocating of Web server group system reach balanced as far as possible, improve the efficient that request distributes, server resource is fully used, for the user provides better Web service through load-balancing method.
For the load balancing that how to realize the Web server group system, at present oneself has been through having proposed many algorithms and method, and poll (Round-Robin) type dispatching method is exactly one of wherein fundamental method.The simplest polling dispatching method is exactly that distributor (Dispatcher) is selected the server in the Web group system successively with the mode of poll, Web request or network is connected distribute to selected server and handle.Distributor all is a fair play to each server, does not consider the disposal ability of server.Another kind of polling dispatching method is called poll (Weighted Round-Robin) dispatching method of weighting; Disposal ability according to each real server is distributed different weights to them; Represent the handling property of server with corresponding weights, distributor comes to connect to server-assignment according to the weights of server then, and the server that weights are high is received connection earlier; The server process lower than weights more connects, and the linking number of server process is directly proportional with the weights of server.
The advantage of poll class dispatching method is to implement very simple; But exist significantly not enough: simple polling dispatching method is not considered the disposal ability of server, obviously is not suitable for the inconsistent situation of server process performance in the Web server group system yet.The polling dispatching method of weighting has been considered the difference of server performance; Improved the validity of scheduling, but had fairness problem, the server load that might have is very heavy; And other server is idle, thereby causes the load between the server also unbalanced.Therefore,, realize the simple advantage, also need corresponding mechanism and guarantee their fairness, guarantee the load balancing between the Web server except keeping it for poll class dispatching method.
Summary of the invention
For the above-mentioned technical problem that the load balancing that solves existing Web server group system exists, the polling dispatching load-balancing method that a kind of fairness provided by the invention is good.Adopt method provided by the present invention,, improved the fairness of Web server group system, particularly avoided the low server of weights possibly can not get the situation of using for a long time keeping poll class dispatching method to realize on the simple basis.
The technical scheme that the present invention solves the problems of the technologies described above may further comprise the steps:
(1) when Web request service queue is sky, promptly do not have user's accessing Web services device group system, then the server scheduling module gets into the state of waiting for that the Web request arrives; Otherwise, continue;
(2) the Web request counter with each server in the active server tabulation is changed to 0;
(3) number with server in the active server tabulation places the access server counter;
(4) calculate the residue weights of each server of active server tabulation, the minimum weights of getting wherein are W Min
(5) first server in the tabulation of selection active server distributes a Web to ask to handle to this server from Web request service queue; The Web request counter of server adds 1, and the residue weights reduce 1;
(6) judge whether Web request service queue is empty, if, execution in step (1); Otherwise, continue;
Whether the residue weights of (7) judging server are 0, if, with server deletion from the active server tabulation, execution in step (11); Otherwise, continue;
(8) judge that whether the Web request counter is less than minimum weights W Min, if continue; Otherwise, execution in step (10);
(9) continue from Web request service queue, to distribute a Web to ask to handle to this server, the Web request counter of server adds 1, and the residue weights reduce 1; Execution in step (6);
(10) selected server is moved on to the afterbody that active server is tabulated;
(11) the access server counter subtracts 1;
(12) judge whether the access server counter is 0, if continue; Otherwise, execution in step (5);
(13) execution in step (2).
 
Technique effect of the present invention is: the least residue weights of all pressing in each round among the present invention in the active server are each server-assignment load, thereby have fairness preferably, can realize more effective load balancing.In addition, the least residue weights are not changeless, all will choose the least residue weights again before each round begins, so the present invention is a kind of polling dispatching load-balancing method of dynamic weights, have that complexity is low, efficient is high, the advantage of easy realization.
Below in conjunction with accompanying drawing and specific embodiment the present invention is further described.
 
Description of drawings
Web request, Web ask the sketch map that concerns between service queue, server scheduling module, the server among Fig. 1 the present invention.
In Fig. 2 embodiment of the invention, the server scheduling situation sketch map of the 1st round, left-hand component is to distribute to the Web request of server process in this round, right-hand component is through after the scheduling of this round, the residue weights of server.
In Fig. 3 embodiment of the invention, the server scheduling situation sketch map of the 2nd round.
In Fig. 4 embodiment of the invention, the server scheduling situation sketch map of the 3rd round.
In Fig. 5 embodiment of the invention, the server scheduling situation sketch map of the 4th round.
In Fig. 6 embodiment of the invention, after 4 rounds, four handled Web requests of server and the sketch map that remains weights.
Fig. 7 server scheduling process flow diagram.
Embodiment
The Web server group system polling dispatching load-balancing method that a kind of fairness provided by the present invention is good is characterized in that it comprises initialization procedure, Web request queue process and server scheduling process.Initialization procedure comprises according to the given one of which of the performance of each a server weights; When Web asks, the server scheduling module is carried out initialization.Web request queue process is meant when a new access request arrives, and enters into formation and lines up, and waits distribution server it is handled.The server scheduling process prescription be how from the Web server group system, to select a server, then selected server is distributed in the request of the Web in the formation and is handled.
 
Described polling dispatching load-balancing method is given weights of each server-assignment (Weight) in the Web server group system, the handling property of expression server.When the weights (being the disposal ability of server) of a server when not using up, promptly remaining weights claim that greater than 0 server is movable (Active).All movable servers in the group system are put in the tabulation, are called " active server tabulation ".When the weights of a server used up, promptly remaining weights had equaled 0, and then at this moment server is deleted this server by becoming of activity inactive (Inactive) from " active server tabulation ".If server becomes movablely by inactive, then this server is joined the afterbody of " active server tabulation ".
Described polling dispatching load-balancing method is placed on one with the Web request of mailing to the Web server group system and lines up, and this formation is called " Web ask service queue ", scheduler module will by first earlier the service principle from formation, extract Web and ask.
Described polling dispatching load-balancing method defines a round (Round) and is a certain moment T1 (T1>0), and the server that is comprised in " active server tabulation " is by the process of server scheduler module visit.In this round implementation, become movable server again and can join the afterbody of " active server tabulation ", but will begin to be visited from next round.In a round, the Web that can be accepted by access server asks load to be no more than the minimum value of Servers-all residue weights in this round.
Described polling dispatching load-balancing method; In order to represent the number of the server of required visit in the round; Introduce the number of a counter records server; This counter is called " access server counter ", the quantity of server in " active server tabulation " when being illustrated in a round and beginning.Whenever server of server scheduling module accesses, " access server counter " just reduces 1, when " access server counter " when finally equaling 0, just explains that this round finishes.
Described polling dispatching load-balancing method, with the Web request number that server of a counter records receives in a round altogether, this counter is called " Web request counter ", and each server all has one " Web request counter ".Before a round began, the initial value of " Web request counter " was 0, and Web request of every then reception just adds 1 with " Web request counter ".
In the Web server group system polling dispatching load-balancing method provided by the present invention, the relation between Web request, Web request service queue, server scheduling module, the server is as shown in Figure 1.When a Web request 1When arriving server cluster system, at first enter into Web request service queue 2Middle queuing waits processing.The server scheduling module 3Use polling dispatching load-balancing method of the present invention 4Come dispatch server, at the individual server of n (n is the natural number greater than 0) 5Server of middle selection is to Web request service queue 2In Web request handle, make server 5Resource obtain fair allocat, realize load balancing efficiently.
More directly perceived in order to explain, represent " active server tabulation " with ActiveServerList, be the tabulation of all movable servers.When a server is inactive by becoming of activity, this server will be removed from ActiveServerList.When a server is become when movable by inactive, this server will join the afterbody of ActiveServerList.
The confirming of server in round: the time started of at present considering round 1 is T1, and the concluding time is T2 (T2>T1).At T1 constantly, comprise three servers such as server-1, server-2, server-3 among the ActiveServerList, so in round 1, the server scheduling module will be visited three above-mentioned servers.Between T1, T2, server-4 becomes movable and has joined ActiveServerList, but the server scheduling module can be at round 1 access server-4 because server-4 at round T1 1 zero hour not in ActiveServerList.Definition round 2 begins at T2 constantly, and in round 2, the server scheduling module will visit the server among the T2 moment ActiveServerList, i.e. access server-1, server-2, server-3, server-4.In addition, which round like the round that begins from T2, for server-1, server-2, server-3, is the 2nd round, but for server-4, is the 1st round with respect to certain server.
More directly perceived in order to explain, represent " access server counter " with VisitServerCount, be the quantity of server during ActiveServerList tabulates when a round begins.Whenever the visit of server scheduling module completion to a server, VisitServerCount just reduces 1, when VisitServerCount finally equals 0, just explains that this round finishes.
More directly perceived in order to explain, represent " Web request counter " with RequestCount, be the Web request number that a server is received in a round.Use RequestCount i" the Web request counter " of expression server-i (1≤i≤n, i are natural number); Use RequestCount i(r) be illustrated in the Web request number that server-i received in the r round.
More directly perceived in order to explain, represent the residue weights of server with UnusedW, be a server owing to handle the Web request remaining disposal ability, when server was idle, its residue weights were exactly its weights, i.e. its whole disposal abilities.Use UnusedW iThe disposal ability that expression server-i (1≤i≤n, i are natural number) also is not used, i.e. the residue weights of server-i.
 
Below in conjunction with embodiment polling dispatching load-balancing method provided by the present invention is described, four servers are arranged among the embodiment: server-1, server-2, server-3, server-4; There are 20 Web requests to need the Web server group system to handle; Divide and represent with R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20; Wherein R1 arrives at first, and R20 arrives at last.
 
One, initialization procedure
This is that the server scheduling module is carried out initialized process, comprises following certain operations:
Performance according to server is weights of each server-assignment, and the weights of server-i are used W i(1≤i≤n, i are natural number) expression, n=4 in the present embodiment, the weights of four servers are respectively W 1=10, W 2=7, W 3=3, W 4=2 (be with the unit of measurement of Web request number as weights and load in the present embodiment, if weights, load size are to weigh with other metric, the present invention is suitable equally, also belongs within the institute of the present invention covering scope).Because the weights of four servers are all greater than 0, so four servers all are movable, so four servers all join among the ActiveServerList, obtain ActiveServerList={ server-1, server-2, server-3, server-4}.
The initial value assignment of VisitServerCount is 0.
RequestCount iThe initial value assignment be 0,1≤i≤n, n=4 in the present embodiment;
Two, Web request queue process
In the present embodiment; There are 20 Web requests such as R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20 to enter into " Web asks service queue ", waiting distribution server they are handled.
 
Three, server scheduling process
The server scheduling module begins the server among the ActiveServerList is conducted interviews, and selects a server that the Web in " Web asks service queue " is asked to handle.
During beginning, judge at first whether " Web asks service queue " is empty, in the present embodiment, 20 Web requests are arranged, non-NULL in " Web asks service queue ".At this moment, ActiveServerList={ server-1, server-2, server-3, server-4} is changed to 0 with the RequstCount of each server among the ActiveServerList, i.e. RequestCount i=0,1≤i≤4.The number of server=4 among the VisitServerCount=ActiveServerList, the 1st round that gets into four servers:
The residue weights of four servers are respectively: UnusedW 1=10, UnusedW 2=7, UnusedW 3=3, UnusedW 4=2, minimum weights W wherein Min=2.
Because server-the 1st, first server among the ActiveServerList is so select server-1 that first Web request R1 in " Web asks service queue " is handled.RequstCount 1=0+1=1,UnusedW 1=10-1=9。Because UnusedW 1>0, RequstCount 1<w MinSo, continue from " Web service request queue ", to distribute Web request R2 to handle by server-1, at this moment, RequstCount 1=1+1=2, UnusedW 1=9-1=8.Because UnusedW 1>0, RequstCount 1=W MinSo, server-1 is moved on to the afterbody of ActiveServerList, ActiveServerList={ server-2, server-3, server-4, server-1}.VisitServerCount=4-1=3。
Continuing to select first server among the ActiveServerList is server-2, and R3 handles to the request of the Web in " Web service request queue ", and RequstCount is arranged 2=0+1=1, UnusedW 2=7-1=6.Because UnusedW 2>0, RequstCount 2<w MinSo, continue from " Web service request queue ", to distribute Web request R4 to handle by server-2, at this moment, RequstCount 2=1+1=2, UnusedW 2=6-1=5.Because UnusedW 2>0, RequstCount 2=W MinSo, server-2 is moved on to the afterbody of ActiveServerList, ActiveServerList={ server-3, server-4, server-1, server-2}.VisitServerCount=3-1=2。
Continue to select the server-3 among the ActiveServerList, R5 handles to the request of the Web in " Web service request queue ", and RequstCount is arranged 3=0+1=1, UnusedW 3=3-1=2.Because UnusedW 3>0, RequstCount 3<w MinSo, continue from " Web service request queue ", to distribute Web request R6 to handle by server-3, at this moment, RequstCount 3=1+1=2, UnusedW 3=2-1=1.Because UnusedW 3>0, RequstCount 3=W MinSo, server-3 is moved on to the afterbody of ActiveServerList, ActiveServerList={ server-4, server-1, server-2, server-3}.VisitServerCount=2-1=1。
Continue to select the server-4 among the ActiveServerList, R7 handles to the request of the Web in " Web service request queue ", and RequstCount is arranged 4=0+1=1, UnusedW 4=2-1=1.Because UnusedW 4>0, RequstCount 4<w MinSo, continue from " Web service request queue ", to distribute Web request R8 to handle by server-4, at this moment, RequstCount 4=1+1=2, UnusedW 4=1-1=0.Because UnusedW 4=0, so server-4 is deleted ActiveServerList={ server-1, server-2, server-3} from ActiveServerList.VisitServerCount=1-1=0。
VisitServerCount=0 explanation round 1 has finished, and the server scheduling situation of the 1st round is as shown in Figure 2.
 
Get into the 2nd round below:
ActiveServerList={ server-1, server-2, server-3} is changed to 0 with the RequstCount of each server among the ActiveServerList, i.e. RequestCount i=0,1≤i≤3.The residue weights of the number of server=3, three server are respectively among the VisitServerCount=ActiveServerList: UnusedW 1=8, UnusedW 2=5, UnusedW 3=1, minimum weights W wherein Min=1.
Because server-the 1st, first server among the ActiveServerList is so select server-1 that the request of the Web in " Web asks service queue " R9 is handled.RequstCount 1=0+1=1,UnusedW 1=8-1=7。Because UnusedW 1>0, RequstCount 1=W MinSo, server-1 is moved on to the afterbody of ActiveServerList, ActiveServerList={ server-2, server-3, server-1}.VisitServerCount=3-1=2。
Continuing to select first server among the ActiveServerList is server-2, and R10 handles to the request of the Web in " Web service request queue ", and RequstCount is arranged 2=0+1=1, UnusedW 2=5-1=4.Because UnusedW 2>0, RequstCount 2=W MinSo, server-2 is moved on to the afterbody of ActiveServerList, ActiveServerList={ server-3, server-1, server-2}.VisitServerCount=2-1=1。
Continue to select the server-3 among the ActiveServerList, R11 handles to the request of the Web in " Web service request queue ", and RequstCount is arranged 3=0+1=1, UnusedW 3=1-1=0.Because UnusedW 3=0, so server-3 is deleted ActiveServerList={ server-1, server-2} from ActiveServerList.VisitServerCount=1-1=0。
VisitServerCount=0 explanation round 2 has finished, and the server scheduling situation of the 2nd round is as shown in Figure 3.
 
Get into the 3rd round below:
ActiveServerList={ server-1, server-2} is changed to 0 with the RequstCount of each server among the ActiveServerList, i.e. RequestCount i=0,1≤i≤2.The residue weights of the number of server=2, two server are respectively among the VisitServerCount=ActiveServerList: UnusedW 1=7, UnusedW 2=4, minimum weights W wherein Min=4.
Because server-the 1st, first server among the ActiveServerList is so select server-1 that the request of the Web in " Web asks service queue " R12 is handled.RequstCount 1=0+1=1,UnusedW 1=7-1=6。Because UnusedW 1>0, RequstCount 1<w MinSo, continue from " Web service request queue ", to distribute Web request R13 to handle by server-1, at this moment, RequstCount 1=1+1=2, UnusedW 1=6-1=5.Because UnusedW 1>0, RequstCount 1<w MinSo, continue from " Web service request queue ", to distribute Web request R14 to handle by server-1, at this moment, RequstCount 1=2+1=3, UnusedW 1=5-1=4.Because UnusedW 1>0, RequstCount 1<w MinSo, continue from " Web service request queue ", to distribute Web request R15 to handle by server-1, at this moment, RequstCount 1=3+1=4, UnusedW 1=4-1=3.Because UnusedW 1>0, RequstCount 1=W MinSo, server-1 is moved on to the afterbody of ActiveServerList, ActiveServerList={ server-2, server-1}.VisitServerCount=2-1=1。
Continuing to select first server among the ActiveServerList is server-2, and R16 handles to the request of the Web in " Web service request queue ", and RequstCount is arranged 2=0+1=1, UnusedW 2=4-1=3.Because UnusedW 2>0, RequstCount 2<w MinSo, continue from " Web service request queue ", to distribute Web request R17 to handle by server-2, at this moment, RequstCount 2=1+1=2, UnusedW 2=3-1=2.Because UnusedW 2>0, RequstCount 2<w MinSo, continue from " Web service request queue ", to distribute Web request R18 to handle by server-2, at this moment, RequstCount 2=2+1=3, UnusedW 2=2-1=1.Because UnusedW 2>0, RequstCount 2<w MinSo, continue from " Web service request queue ", to distribute Web request R19 to handle by server-2, at this moment, RequstCount 2=3+1=4, UnusedW 2=1-1=0.Because UnusedW 2=0, so server-2 is deleted ActiveServerList={ server-1} from ActiveServerList.VisitServerCount=1-1=0。
VisitServerCount=0 explanation round 3 has finished, and the server scheduling situation of the 3rd round is as shown in Figure 4.
 
Get into the 4th round below:
ActiveServerList={ server-1} is changed to 0 with the RequstCount of each server among the ActiveServerList, i.e. RequestCount 1=0.The number of server=1 among the VisitServerCount=ActiveServerList, the residue weights of server-1 are: UnusedW 1=3, minimum weights W Min=3.
By server-1 request of the Web in " Web asks service queue " R20 is handled.RequstCount 1=0+1=1,UnusedW 1=3-1=2。Because " Web asks service queue " has been empty, explaining does not have the Web request to need to handle, so the server scheduling module enters into the state of waiting for that the Web request arrives.The server scheduling situation of the 4th round is as shown in Figure 5.
 
The Web server group system scheduling process that aforesaid embodiment realized; Just described under the situation of given embodiment; Carry out 4 rounds of the beginning of the equal method of polling dispatching load of the present invention; After 4 rounds, four Web that server is handled requests and remaining weights are as shown in Figure 6.Server polling dispatching load-balancing method of the present invention; How much to Web request quantity, number of servers, round is hard-core; In case have the Web request to arrive, the server scheduling module also will continue down to carry out server scheduling, request is handled to Web.The flow process of server scheduling process is as shown in Figure 7.
 
What above embodiment explained is exactly the embodiment of a kind of Web server group system polling dispatching load-balancing method provided by the present invention.Web server load balance scheduling technology provided by the present invention has the following advantages: it is server-assignment Web request that (1) each round is all come with the least residue weights in the active server; With respect to traditional Weight Round Robin method; Has better fairness; The server load of having avoided having is very heavy, and other servers might idle situation.Like the embodiment among the present invention, if come dispatch server by traditional polling dispatching method, the result is that server-1, server-2 and server-3 all are oeprations at full load, and server-the 4th is idle.Therefore; Use load-balancing method provided by the present invention can make full use of the resource of each server in the group system; As long as a server is movable in a round; At least all there is a Web request to distribute to it and handles, so just avoided server to can not get situation about using for a long time, thereby had better load balancing effect.
(2) provided by the present invention is a kind of polling dispatching method of dynamic weights; Employed minimum weights are not changeless in each round; But confirm according to the loading condition of server; When the residue weights of active server all when higher, will give each server-assignment more Web requests, improve the flexibility of scheduling.
Operation such as (3) add among the ActiveServerList, initialize a variable to, can in the time complexity of O (1), accomplish at the Web of load-balancing method request queue process, server.In the server scheduling process, comprised from the stem of ActiveServerList and shifted out a server, add a server, new variables (VisitServerCount, RequesCount more at the afterbody of ActiveServerList i, UnusedW i) operations such as value, these operations can be accomplished in the time at constant.Therefore, Web server group system polling dispatching load-balancing method provided by the present invention has kept the advantage of poll class dispatching method, and complexity is low, efficient is high, easy realization.

Claims (1)

1. Web server group system polling dispatching load-balancing method that fairness is good may further comprise the steps:
(1) when Web request service queue is sky, promptly do not have user's accessing Web services device group system, then the server scheduling module gets into the state of waiting for that the Web request arrives; Otherwise, continue;
(2) the Web request counter with each server in the active server tabulation is changed to 0;
(3) number with server in the active server tabulation places the access server counter;
(4) calculate the residue weights of each server of active server tabulation, the minimum weights of getting wherein are W Min
(5) first server in the tabulation of selection active server distributes a Web to ask to handle to this server from Web request service queue; The Web request counter of server adds 1, and the residue weights reduce 1;
(6) judge whether Web request service queue is empty, if, execution in step (1); Otherwise, continue;
Whether the residue weights of (7) judging server are 0, if, with server deletion from the active server tabulation, execution in step (11); Otherwise, continue;
(8) judge that whether the Web request counter is less than minimum weights W Min, if continue; Otherwise, execution in step (10);
(9) continue from Web request service queue, to distribute a Web to ask to handle to this server, the Web request counter of server adds 1, and the residue weights reduce 1; Execution in step (6);
(10) selected server is moved on to the afterbody that active server is tabulated;
(11) the access server counter subtracts 1;
(12) judge whether the access server counter is 0, if continue; Otherwise, execution in step (5);
(13) execution in step (2).
CN201110410856.2A 2011-12-12 2011-12-12 Web server cluster system round-robin scheduling load balancing method with good fairness Expired - Fee Related CN102497421B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110410856.2A CN102497421B (en) 2011-12-12 2011-12-12 Web server cluster system round-robin scheduling load balancing method with good fairness

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110410856.2A CN102497421B (en) 2011-12-12 2011-12-12 Web server cluster system round-robin scheduling load balancing method with good fairness

Publications (2)

Publication Number Publication Date
CN102497421A true CN102497421A (en) 2012-06-13
CN102497421B CN102497421B (en) 2014-05-28

Family

ID=46189206

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110410856.2A Expired - Fee Related CN102497421B (en) 2011-12-12 2011-12-12 Web server cluster system round-robin scheduling load balancing method with good fairness

Country Status (1)

Country Link
CN (1) CN102497421B (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023802A (en) * 2012-12-05 2013-04-03 暨南大学 Web-cluster-oriented low energy consumption scheduling system and method
CN104811503A (en) * 2015-05-21 2015-07-29 龙信数据(北京)有限公司 R statistical modeling system
CN106789726A (en) * 2016-12-20 2017-05-31 兴唐通信科技有限公司 A kind of high concurrent service resource allocation method based on service priority
CN108234565A (en) * 2016-12-21 2018-06-29 天脉聚源(北京)科技有限公司 A kind of method and system of server cluster processing task
CN109257448A (en) * 2018-11-21 2019-01-22 网易(杭州)网络有限公司 A kind of synchronous method and device of session information, electronic equipment, storage medium
CN109617807A (en) * 2018-12-28 2019-04-12 深圳云天励飞技术有限公司 Route information update method, device, gateway and storage medium
CN110430278A (en) * 2019-08-14 2019-11-08 平安普惠企业管理有限公司 Load balancing configuration method and device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102185779A (en) * 2011-05-11 2011-09-14 田文洪 Method and device for realizing data center resource load balance in proportion to comprehensive allocation capability

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102185779A (en) * 2011-05-11 2011-09-14 田文洪 Method and device for realizing data center resource load balance in proportion to comprehensive allocation capability

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023802A (en) * 2012-12-05 2013-04-03 暨南大学 Web-cluster-oriented low energy consumption scheduling system and method
CN103023802B (en) * 2012-12-05 2015-11-04 暨南大学 A kind of low energy consumption dispatching patcher towards web cluster and method
CN104811503A (en) * 2015-05-21 2015-07-29 龙信数据(北京)有限公司 R statistical modeling system
CN106789726A (en) * 2016-12-20 2017-05-31 兴唐通信科技有限公司 A kind of high concurrent service resource allocation method based on service priority
CN106789726B (en) * 2016-12-20 2019-09-10 兴唐通信科技有限公司 A kind of high concurrent service resource allocation method based on service priority
CN108234565A (en) * 2016-12-21 2018-06-29 天脉聚源(北京)科技有限公司 A kind of method and system of server cluster processing task
CN109257448A (en) * 2018-11-21 2019-01-22 网易(杭州)网络有限公司 A kind of synchronous method and device of session information, electronic equipment, storage medium
CN109617807A (en) * 2018-12-28 2019-04-12 深圳云天励飞技术有限公司 Route information update method, device, gateway and storage medium
CN110430278A (en) * 2019-08-14 2019-11-08 平安普惠企业管理有限公司 Load balancing configuration method and device

Also Published As

Publication number Publication date
CN102497421B (en) 2014-05-28

Similar Documents

Publication Publication Date Title
CN102497421B (en) Web server cluster system round-robin scheduling load balancing method with good fairness
CN102611735B (en) A kind of load-balancing method of application service and system
Aslam et al. Load balancing algorithms in cloud computing: A survey of modern techniques
CN104657220B (en) Scheduling model and method based on deadline and expense restriction in mixed cloud
CN104901898B (en) A kind of load-balancing method and device
CN107688322A (en) A kind of containerization management system
CN105872098B (en) Data processing method, load balancer and interactive application server and system
CN103747274B (en) A kind of video data center setting up cache cluster and cache resources dispatching method thereof
CN101808118A (en) Access method, device and system of server
CN102110014A (en) Method for balancing loads of virtual machine (VM)
CN106533978B (en) A kind of network load balancing method and system
GB0302926D0 (en) System architecture and engine for massively multi-user operation
CN108228349A (en) For handling the method for task, system and storage medium
EP2176773A2 (en) Data packet processing method for a multi core processor
CN106610871A (en) Cloud operating system architecture
CN103176780A (en) Binding system and method of multiple network interfaces
Zhang et al. A cloud gaming system based on user-level virtualization and its resource scheduling
CN104052677B (en) The soft load-balancing method and device of data mapping
CN106251071A (en) A kind of cloud workflow implementing method supporting multiple engine
CN108108225A (en) A kind of method for scheduling task towards cloud computing platform
CN101610211A (en) A kind of load balancing of cache method that realizes WRR
CN106412030B (en) A kind of selection storage resource method, apparatus and system
CN100388183C (en) Server load equalization method for implementing weighted minimum linked allocation
CN103842955B (en) A kind of job flow control method, device and system
Zhao et al. Joint reducer placement and coflow bandwidth scheduling for computing clusters

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140528

Termination date: 20161212

CF01 Termination of patent right due to non-payment of annual fee