Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
highlights
We propose a capacity-aware utility model to support negotiation of cloud services.
The utility function takes into consideration the available resources dynamically.
The approach improves the provider utility and reduces SLA violations.
article
info
Article history:
Received 15 May 2014
Received in revised form
18 January 2015
Accepted 9 March 2015
Available online xxxx
Keywords:
Cloud computing
QoS management
SLA
Negotiation
Capacity planning
abstract
Dynamic customers requirements and providers resources availability in the Cloud market make it
inadequate static approaches to guarantee Quality of Service (QoS) levels and to define pricing. In this
context, negotiation guided by dynamic information is a viable way to achieve high satisfaction levels
for both contract parties. We propose to exploit capacity planning to support bilateral negotiation
processes with the aim of optimizing the utility for service providers, by avoiding contracts that could
incur in Service Level Agreements (SLAs) violations, keeping, at the same time, competitive prices. The
proposed technique exploits a non-additive utility function defined in the region of acceptable SLA
proposals, taking into account desired QoS and expected resources availability, costs and penalties. The
experimental analysis shows the benefit of the proposed dynamic approach with respect to static ones
in a scenario characterized by a set of customers and differentiated classes of applications provided by a
cloud environment.
2015 Elsevier B.V. All rights reserved.
1. Introduction
Service Level Agreements (SLAs) [1] represent key elements to
achieve full success in Cloud computing, since they represent the
desired guarantees between service providers and customers. SLAs
allow to formally describe the offered functions, the QoS levels
the provider promises to meet, the responsibilities [2] of both the
contract parties, and the penalties applied in case QoS levels are
not satisfied.
Platform as Service (PaaS) providers (e.g. Google App Engine
and Force.com), often offer a pool of differentiated services with
pre-fixed prices, related to the complexity of the deployed applications, measured through metrics such as the number of applications and database objects. For these services, SLAs are currently
The problem of a self-adaptive capacity planning for optimizing economic profits related to SLA of Internet Services has been
investigated in the literature. Some approaches leverage the queuing theory to solve an optimization resource allocation problem
under constraints on the service rate. In particular, the paper [18]
takes into account the profit with respect to the penalty and [19]
the reward in case a surge workload is supported. The paper [20]
proposes a capacity planning method based on a queuing network
approach and an analytical performance model of Cloud service to
predict the optimal configuration of a Cloud application, considering both the provider profit and the customer satisfaction levels. As
in our proposal, resource virtualization for performance isolation
and dynamic resource allocation are exploited. However, these papers apply capacity planning techniques to optimally manage data
center capacity, by considering a set of signed SLAs, but not to define the offer space and the potential utility for the provider of new
SLAs under negotiation.
The paper [21] deals with the dynamic capacity allocation
of a data center to a hosted application on the basis of the
workload demand, in order to reduce SLA violations and power
consumption. To this aim, historical workload traces are analyzed
to identify a base daily pattern represented by an aggregation
(discretization) of the original workload time-series. The pattern
is defined through a dynamic programming problem aiming to
minimize the discretization error and the number of intervals in
the discretization. Overloading is handled with capacity increase
at short-term scale.
In our paper, we consider customer workload as a pre-condition
for SLA negotiation and capacity planning is adopted in this
initial phase of contract life-cycle. The technique proposed in the
paper cited above could be used in our solution during resource
utilization phase (after a contract has been established) and to
define a new customer profile (workload definition) for successive
SLA negotiations.
3. A PaaS for web hosting
Resource allocation strategies of a PaaS can be influenced
by application requirements. We classify applications according
to two dimensions: the functional and technological ones. The
former affects the number of users simultaneously accessing
the application, the way they interact with it, and, as a
consequence, the aggregated request rate. This dimension is
defined by the following sub-dimensions: the application class,
the interactive level (interactive-intensive vs. batch processing),
and geographic extension (national vs. continental or worldwide spread notoriety). The technological dimension characterizes
the way the data center resources are mainly exploited by
the application. It affects the performance pattern exhibited by
executing the application on a pool of resources. The related
sub-dimensions are: architecture (monolithical vs. multi-tier
architecture), and memory management (volatile vs. persistenceintensive data management).
We focus on a PaaS for hosting Web applications, called
Virtual Web Platform (VWP) service. A VWP service offers a virtual
platform used to host interactive-intensive Web applications with
national geographic extension, composed of multiple components,
deployed on the provider resources according to a multi-tier
architecture and with a volatile-intensive data management.
3.1. SLA model
The SLA model is structured in four sections: (1) service
description, (2) QoS target, (3) measurement and (4) penalty model.
J
D
K
Pendkj .
(1)
Pendkj
t
dkj
= p
t
max
with > 0, p =
P
DKJ
if tdkj 0
if 0 < tdkj < tmax
if tdkj tmax
(2)
Table 1
SLA parameters.
D
B
wk , k : 1 , . . . , K
Negotiated
T
P
MinAvail
tmax
D
K
nidk ,
(3)
d=1 k=1
N +1
Ui (SLAi , Ni )
Q
i=1
(4)
i=1
the new set Q of signed SLAs. UiR and Ui are the contract utility deriving by each SLA considering respectively R and Q as the set of
signed SLAs. Generically, contract utility Ui is given by:
Ui (SLAi , Ni ) = Pi Ci Peni ,
(5)
(6)
(7)
(8)
nidk M ,
Q
d, k.
(9)
i =1
opt
opt
Service availability condition: the percentage of nQN +1dk whose related response time overcomes TN +1 more than tmax must be
constrained by
N +1
i, d, k.
(10)
nidk N , i, d, k
Q
(11)
opt
(12)
Response time acceptability condition: a response time TN +1 is acceptable if the utility of the proposal (TN +1 , Pmax (TN +1 )) is equal
opt
(13)
(14)
(15)
5.1. A heuristic
In order to evaluate the utility in a computationally feasible
manner, we propose a heuristic aiming to find an approximation of
the utility function and of related acceptable region solving (8) for a
limited number of cases and exploiting an interpolation technique.
The algorithm consists of the following main steps:
(16)
(17)
Q
NN +1 = {nN +1dk }
max
N +1
Q
nidk
opt
nN +1dk
(Tmax , WN +1 )
(18)
i=1
Q
(19)
less than both nmax and the optimal number nN +1dk , we find a reallocation plan, involving the already signed SLAs, that leads to the
greatest utility increase. The process is stopped when the acceptability conditions are satisfied. If the re-allocation actions do not allow to satisfy the acceptability conditions, this means that the new
(a) Office.
(b) Business.
(c) Private.
SLA does not lead to an acceptable utility for any value of price and
response time. In this case the acceptable region cannot be defined
and the current negotiation request is refused.
Step 2
Tmin is evaluated adopting an iterative approach aiming to
find the minimum response time that satisfies the acceptability
conditions. Initially, Tmin is defined as the minimum response time
obtained in each time slot:
Tmin = min(t (nN +1dk , wN +1k ))D,K .
(20)
nidk
, nmax
i =1
k.
(21)
Tmax Tmin
z+1
(22)
Tmin TN +1 Tmax ,
Pmin (TN +1 ) PN +1 Pmax (TN +1 ).
Pmin (TN +1 ) and Pmax (TN +1 ) are evaluated adopting an interpolation technique which takes into account the distance between
response time TN +1 and the nearest response times in the set {Tz }.
6. Experimental results and discussion
In this section, we analyze the non-linear behavior of the
proposed non-additive utility model with respect to price and
the contract validity period D (the same for all the contracts)
has a duration of 180 days;
static competitive (balanced demand/supply) market conditions, characterized by a provider interest level des = 0.5;
= 4 for price evaluation, c = 4.17 10 3 e, for cost
evaluation;
i, d, k.
(23)
TBOUND = 2 s;
PUmax = 30% and PUmin = 10%;
= 5 ms and = 5 ms, for Tmin definition;
nmax = 2000, nmin = 1;
the number of virtual machines initially available in each daily
time slot is M = 20 000;
Z = 28.
We define the daily workload pattern for three application
classes (see Section 3.1): (1) office: support of office work and tertiary industry, (2) business: support to production cycle of manufacturing industry, and (3) private: services for e-commerce, online
banking, games, news and entertainment portals, connecting people services, social networks, etc. Fig. 2 shows the normalized
workload plans W = {w1 , . . . , w12 } for the three application
classes, considering the partition of a day in 12 time slots of two
hours-duration. The patterns are based on the analysis of daily
traces of real applications reported in [21] and their discretization
with respect to time slots. The absolute workload plans adopted in
our experimentation are obtained scaling the normalized ones by
fixing the peak workload value, called V .
The application performance function of each application class
is based on a queuing performance model, frequently adopted to
abstract a multi-tier application hosted in a data center [22,23].
1
1
ts
(24)
n
ts
(25)
acceptable region while Fig. 3(b) shows the maximum utility for
the three workload patterns and for two peak values, 15 000 and
35 000 r/s. In Fig. 3(a) we note that for proposals characterized
by workloads with V = 15 000 r/s it is possible to reach lower
response times with respect to workloads with V = 35 000 r/s.
Moreover, the maximum acceptable prices decrease by increasing
response times with a trend that is mainly influenced by the
performance model adopted in the experimentation. In particular,
for response times close to the best reachable response time (ts ),
the optimal allocation plans are high expensive (high resources
demand especially in time slots with workload near the peak) and,
consequently, prices reach high values. On the contrary, for high
response times (close to TBOUND) the maximum acceptable prices
slowly decrease towards a value that is influenced by the allocation
plan made of the minimum number of resources required in each
time slot to satisfy the queue stability condition.
As it is possible to note in Fig. 3(b), for workloads with huge
peak values, the maximum utility that potentially can be reached
is higher than the one reachable with lower peak values. This is
tied to the necessity to assign more expensive allocation plans,
that leads to higher costs and consequently higher prices and potential gains. Moreover, the maximum utility trend is increasing
in the first part, reaches a maximum and then decreases. This is
due to the impact of costs and penalty (performance degradation)
that for lower response times are huger and consequently limits
the profits. Fig. 4 shows the influence of available capacity on utility model. In particular Fig. 4(a) shows the acceptable region and
(27)
Fig. 4(b) shows the maximum utility considering the office workload pattern with V = 35 000 r/s and a number of available virtual machines in each time slot varying from 1716 to 2000, that are
respectively the minimum number of virtual machines required to
accept the negotiation request and the maximum assignable one in
each time slot. Increasing the number of available virtual machines
in each time slot takes to lower response times withing the acceptable performance intervals and higher maximum utility value, because of more expensive allocation plans and, consequently, higher
prices and lower penalty (lower performance degradation).
The proposed utility model allows to evaluate the provisioned
utility for a certain price P and response time T within the acceptable region, adopting an interpolation technique on a finite number
(Z + 2) of exact utility evaluations. The accuracy error introduced
by this approach is mainly influenced by the non-linearity of the
utility function and by the number Z of exact evaluations. In order
to evaluate the accuracy error, we compare the provisioned utility
U (T , P ) with the exact one. The exact utility Uexact (T , P ) is defined
as the utility provisioned adopting the actual best allocation plan
assignable to a new contract. It is obtained solving optimization
problem (8) taking into account the conservative allocation policy,
SLA parameters, current capacity availability and already signed
SLAs. Given Uexact , we define the relative error, E, as:
E=
|Uexact U |
Uexact
100.
(26)
Fig. 5 shows the percentiles, from the 1-th to the 100-th, of the
relative error varying Z from 0 to 50. The samples are obtained
considering 200 values of response times uniformly distributed
within the acceptable performance interval, and for each response
time, 200 price values uniformly distributed within the respective
acceptable price interval. The reported results refer to the office
workload pattern with V = 35 000 r/s. We observe that with Z =
30 the 80% of samples reports a relative error lower than 0.6% while
the 90% of samples about 2%. More and more increasing Z , relative
error remains significative for a more and more decreasing number of samples. We can state that such results are satisfying for supporting negotiation strategies, because the utility provision of a SLA
for a new contract can tolerate a limited degree of inaccuracy for
the benefit of a feasible computational complexity.
6.3. Dynamic versus static approaches
In this section, we evaluate the effectiveness of the proposed
dynamic approach in increasing customer satisfaction level and
provider profit and reputation with respect to static approaches.
To this aim, we define two parameters, the price-based indicator,
UC (P ) =
(28)
(28) allows to obtain values within the interval [0, 1] for prices
within the interval [Costopt , Pmax ]. For prices less than Costopt ,
UC (P ) is greater than 1, for prices greater than Pmax it becomes negative. As a consequence, UC (P ) is adopted as an indicator that a
proposal is in the customer acceptable region and represents a potential negotiation point if its value is within the interval [0, 1].
Since in our experimentation scenario Pmax = 2 Costopt , (28)
becomes:
UC (P ) = 2
Costopt
(29)
D
K
(T Tdk ),
d=1 k=1
Tdk =
Tdk T ,
0,
if (Tdk T ) > 0
,
if (Tdk T ) 0
(30)
d, k.
= 1
Tdk
d=1 k=1
deg T
(31)
10
Fig. 6. Acceptable region (AR) evaluated for the static utility model (considering
the office workload pattern and peak value V 25 000 r/s), and for the Inner
AMP and Outer AMP models, two additive multi-parameter utility models
evaluated considering as acceptable region, respectively, the rectangle inscribed
and circumscribed AR.
Table 2
Parameters of the Inner AMP and Outer AMP models.
Tmin [s]
Tmax [s]
Pmin [e]
Pmax [e]
Inner AMP
Outer AMP
0.27
2.0
6 780
10 313
0.07
2.0
5 672
24 504
T Tmax
Tmax Tmin
wT + wP = 1,
VP (P ) =
P Pmax
Pmax Pmin
(32)
wT > 0, wP > 0,
Fig. 7. Utility evaluation for the proposed non-additive model and Inner AMP and
OuterA MP models fixing price and varying response time.
and with the Inner AMP and Outer AMP models, considering two
fixed values of prices (24 504 e and 5672 e) and varying response
time.
A comparison of utility estimations for both the approaches,
considering the vertices of acceptable regions of Inner AMP and
Outer AMP models, is reported in Table 3. In particular, the table
reports: utility U provisioned by the static utility model normalized within the acceptable region AR and utility UAMP provisioned
by the AMP model related to the vertices under study; if a point
(T , P ), corresponding to a SLA proposal, is feasible or not for negotiation adopting the static utility model. Such condition, called
Potential Negotiation Point Feasibility (FEANP), is verified if the SLA
proposal is included in acceptable region AR. When a SLA proposal is external to AR, it is not included in the negotiation process
for the agreement achievement with the customer. Moreover, the
table reports Uexact , that is the effective utility evaluated adopting
the best allocation plan resulting from the optimization problem
(8), the provisioned penalty and the value of the parameter UC (P ).
Analyzing the results, we can state that the Inner AMP model
produces utility estimates more similar to the proposed approach
than the Outer AMP model. On the other hand, the Inner AMP
model corresponds to a low-risk approach, rejecting all points
characterized by high performance, with the disadvantage of
precluding the chance of high profits that can be gained with
high demanding customers, that are ready to pay much for high
performance services. On the other hand, the Outer AMP model
corresponds, on one hand, to a high-risk approach, since high
performance is offered for low prices, and on the other one, to a
out-of-market behavior, because of too high prices required for low
performance. The main estimation error for static AMP approaches
are pointed out for points (0.07 s, 5672 e) and (2 s, 24 504 e),
that, instead, are not feasible for the proposed approach, because of
respectively too low price (negative utility and Uexact ) and too high
price (utility greater than 1 and negative UC (P )). Finally, we can
conclude that, with respect to the AMP utility model, the proposed
approach has the advantage of reducing the acceptable region to
the proposals with feasible performance and competitive prices,
and so it can be effectively adopted by an integrative negotiation
strategy to quickly reach an agreement as good as possible for both
customer and provider.
6.3.2. Proposed dynamic versus static approaches
We conducted a comparative analysis between the static and
dynamic evaluation of the proposed utility model to show its capability in leading towards negotiation agreements profitable for
both provider and customer. In particular, for this experimentation we consider the static utility model, as defined in Section 6.3.1,
11
Table 3
Non-additive versus AMP utility model.
FEANP
!FEANP
UAMP
Uexact [e]
Pen [e]
U C (P )
!FEANP
FEANP
FEANP
!FEANP
0
0.5
0.5
1
8 965
0.04
0.23
2.48
2 376
0
10 263
0
1.54
0.90
0.00
2.75
0.05
0.18
0.51
0.64
FEANP
FEANP
FEANP
FEANP
0
0.5
0.5
1
616
0
0
0
0
0.90
0.69
0.33
0.00
T [s]
P [e]
0.07
2.0
0.07
2.0
5 672
5 672
24 504
24 504
1.19
Outer AMP
Inner AMP
0.27
2.0
0.27
2.0
6 780
6 780
10 312
10 312
516
1 968
19 348
1 623
4 150
5 156
12
Table 4
Comparison of dynamic and static utility model for various sequences of NRs.
V [r/s]
Sta. Dyn.
U [e]
U exact [e]
Office
25 000
Sta.
Dyn.
47 720
47 720
47 911
47 911
0
0
Uniform Distr.
avg 25 000
Sta.
Dyn.
51 527
38 841
35 484
38 821
Uniform Distr.
avg 20 000
Sta.
Dyn.
58 123
55 517
Uniform Distr.
avg 30 000
Sta.
Dyn.
51 916
50 349
Workload Pattern
Pen [e]
Avg (E)
Std (E)
SLAsigned
CUP %
0.4
0.4
1.2
1.2
15
15
70
0
2723
0
72.7
0.05
76
0.1
16
16
70
0
55 626
55 626
0
0
30.4
0.14
24
0.3
18
18
64
0
29 548
50 544
1844
0
406
0.47
659
1.6
16
18
70
0
the maximum response time of the PNP, the static and dynamic
utility models give the same results. In particular, the first 15 NRs
are accepted, their related PNPs are feasible and take to contract
stipulations, the three conditions POSUCP, SSA and POSUCT are satisfied, no penalty payment are provisioned, the total provisioned
utility is the same (47 720 e) and the average value and standard
deviation of relative error E of the utility estimation for each contract is very low. After the 15-th NR, the resource occupation is 0.99
in the time slot 7 (involved by the peak workload), and remaining
36 virtual machines are not enough to grant service availability for
any other NR. Since the static utility model does not point out this
situation (it does not take into account effective capacity availability), it considers each NR further to 15-th acceptable and related
PNP feasible. As a consequence, with the static approach such NRs
lead to the violation of SSA condition, causing a high provider reputation loss (CUP = 70%). On the contrary, the dynamic utility
model, taking into account the effective capability availability, refuses from the 15-th to the last NR, since NRACC condition is not
satisfied, and avoids any negative influence on provider reputation
(CUP = 0%).
For the second sequence of NRs, regards the static approach, we
can note a huge relative error for single utility estimations (the average value is 72.7%), that causes a huge discrepancy between the
final provisioned utility (51 527 e) and the exact one (35 484 e)
at the end of the negotiation sequence. Such results are caused
by the wrong estimations performed by the static approach when
workload plans are different from the one adopted for the static
utility model evaluation. In particular, for lighter workload plans
(lower V and less demanding patterns), the static utility is less
than the exact one since the price acceptable intervals are evaluated for huger (more expensive) allocation plans than effectively
necessary to grant QoS guarantee terms, and vice versa, for huger
workload plans, it is greater that the exact one. In the first case,
the static approach can incur in the violation of POSUCP condition,
since price of PNP is too high with respect to the cost of the effectively required allocation plan and the utility becomes greater
than the maximum allowed one. In the second case, performance
degradation (and penalty), not correctly provisioned, can happen
and further influence utility estimation error. On the contrary, the
dynamic approach, taking into account the effectively required
workload plan of the NR and current capacity availability, ensures
accurate utility provisions as for the first scenario. Summarizing,
with the static approach 16 NRs lead to contract stipulations, while
the remaining ones cause: 1 violation of the POSUCT condition
(with UC (T ) = 1.82), 6 violations of the POSUCP condition, 27
violations of the SSA condition, that take to a high provider reputation degradation (CUP = 70%). In the dynamic approach, instead,
beyond to 16 contract stipulations, the remaining ones are immediately discarded for violation of FEANP condition (9 NRs) and of
NRACC condition (25 NRs), so avoiding any negative influence on
provider reputation.
The third and the fourth sequence point of NRs point out the
same advantages of the dynamic approach with respect to the
13
Fig. 8. Static and dynamic utility evaluation for the sequence of NRs whose workload plans are characterized by a uniform distribution of application classes and of peak
values with average of 30 000 r/s. Utility bars with dotted contour represent NRs that lead to provider reputation loss.
7. Conclusion
References
[1] L. Wu, R. Buyya, Service level agreement SLA in utility computing systems,
in: V. Cardellini, E. Casalicchio, K. Castelo Branco, J. Estrella, F. Monaco (Eds.),
Grid and Cloud Computing: Concepts, Methodologies, Tools and Applications,
IGI Global, 2012, pp. 286310.
[2] A. Andrieux, K. Czajkowski, A. Dan, K. Keahey, H. Ludwig, T. Nakata, J. Pruyne,
J. Rofrano, S. Tuecke, M. Xu, Web Services Agreement Specification (WSAgreement), Tech. Rep., Global Grid Forum, GRAAP WG, 2005.
[3] K. Czajkowski, I. Foster, C. Kesselman, Agreement-based resource management, Proc. IEEE 93 (3) (2005) 631643. http://dx.doi.org/10.1109/JPROC.
2004.842773.
[4] H. Raiffa, The Art and Science of Negotiation, Harvard University Press, 1982.
[5] P. Wakker, Additive Representations of Preferences: A New Foundation of
Decision Analysis, Kluwer Academic Publishers, Dordrecht, Boston, London,
1989.
[6] M. Arlitt, C. Williamson, Internet Web servers: workload characterization
and performance implications, IEEE/ACM Trans. Netw. 5 (5) (1997) 631645.
http://dx.doi.org/10.1109/90.649565.
[7] A. Williams, M. Arlitt, C. Williamson, K. Barker, Web workload characterization: Ten years later, in: X. Tang, J. Xu, S. Chanson (Eds.), Web Content Delivery, in: Web Information Systems Engineering and Internet Technologies Book
Series, vol. 2, Springer US, 2005, pp. 321.
[8] N. Ranaldo, E. Zimeo, Exploiting capacity planning of cloud providers
to limit SLA violations, in: The 3rd International Conference on Cloud
Computing and Services Science, CLOSER 2013, 2013, pp. 184195.
http://dx.doi.org/10.5220/0004377001840195.
[9] N. Ranaldo, E. Zimeo, Capacity-aware utility function for SLA negotiation
of cloud services, in: IEEE/ACM 6th International Conference on Utility and
Cloud Computing, UCC 2013, Dresden, Germany, December 912, 2013, 2013,
pp. 292296. http://dx.doi.org/10.1109/UCC.2013.58.
[10] H. Li, S. Su, H. Lam, On automated e-business negotiations: Goal, policy,
strategy, and plans of decision and action, J. Org. Comput. Electron. Commer.
16 (1) (2006) 129. http://dx.doi.org/10.1080/10919390609540288.
[11] M. Chhetri, J. Lin, S. Goh, J. Yan, J.Y. Zhang, R. Kowalczyk, A coordinated
architecture for the agent-based service level agreement negotiation of Web
service composition, in: The 17th Australian Software Engineering Conference,
ASWEC 2006, 2006, pp. 9099. http://dx.doi.org/10.1109/ASWEC.2006.1.
[12] F. Zulkernine, P. Martin, An adaptive and intelligent SLA negotiation
system for Web services, IEEE Trans. Serv. Comput. 4 (1) (2011) 3143.
http://dx.doi.org/10.1109/TSC.2010.44.
[13] M. Macas, J. Guitart, Using resource-level information into nonadditive
negotiation models for cloud market environments, in: 12th IEEE/IFIP Network
Operations and Management Symposium, NOMS 2010, 2010, pp. 325332.
[14] J. Spillner, A. Schill, Dynamic SLA template adjustments based on service
property monitoring, in: IEEE International Conference on Cloud Computing,
CLOUD 2009, 2009, pp. 183189. http://dx.doi.org/10.1109/CLOUD.2009.56.
[15] F. Ren, M. Zhang, Bilateral single-issue negotiation model considering
nonlinear utility and time constraint, Decis. Support Syst. 60 (0) (2014) 2938.
Automated negotiation technologies and their applications. http://dx.doi.org/
10.1016/j.dss.2013.05.018.
[16] R. Zheng, N. Chakraborty, T. Dai, K. Sycara, M. Lewis, Automated bilateral
multiple-issue negotiation with no information about opponent, in: 2013
46th Hawaii International Conference on System Sciences (HICSS), 2013,
pp. 520527. http://dx.doi.org/10.1109/HICSS.2013.626.
[17] J. Allspaw, The Art of Capacity Planning: Scaling Web Resources, OReilly
Media, Inc., 2008.
Acknowledgment
This paper is partially supported by Italian Ministry of
Education, University and Research within the framework of PRIN
IDEAS Integrated Design and Evolution of Adaptive Systems
grant number J38C13001510001.
14