Download A Framework for Verifying Scalability and Performance of Cloud

Transcript
B assumes that for each agent (server) is capable of handling only one call
(request). This does not match with computer networks, where computer
is capable of handling multiple requests in the same time. Blocking value
calculated by Erlang B is much higher than in the real situation. Load
balancer uses as maximum 10 concurrent connections for each back-end server
and excessive requests are dropped. This is M/M/n/n queue model and does
not fit well with Erlang B.
Second approach is to use server count and traffic rate in erlangs calculated by equation 6.3, this will give system utilization that is similar to the
Linux 1 minute load. Equation 6.5 shows the way to calculate the blocking probability, that is similar to the results of experiment. If the value is
under 0, it means no job is blocked and the value is assigned to 0, not to
allow negative values. Using calculated blocking probability and lambda (see
equation 6.6), equation gives how many requests will go through the system.
Pb = 1 −
scount
scount
=1−
, if Pb < 0 : Pb = 0
E
λ×h
µ = (1 − Pb ) × λ
(6.5)
(6.6)
In equation 6.5 the parameter scount is amount of servers and other parameters are the same as previously described. Using modified version of erlang
formula it shows the similar results as the experiments does, thus making the
calculation of revenue more precise. Figure 6.7 shows how the optimal maximum is calculated with revenue function. The revenue is increasing in the
first section of the graph, because more jobs are going through the system and
each job earns more money than there is a necessity to pay for engagement
of additional servers. When the maximum is reached, adding more servers
do not improve throughput and the revenue starts to decrease, as we have to
pay more for the extra servers, but the income does not increase. Using for
arrival rate 600 requests per second and other values are the same as shown
in the table 6.1, the optimal maximum is achieved with 21 servers, meaning
that at the peak, there needs to be at least 21 servers to accommodate the
traffic.
Hill-climbing method. It is an iterative algorithm that starts with an
arbitrary solution to a problem, then attempts to find a better solution by
incrementally changing a single element of the solution. If the change produces a better solution, an incremental change is made to the new solution,
repeating until no further improvements can be found [21].
100