“…There is a plethora of work addressing runtime performance management in distributed server systems, ranging from system-level solutions like process/load migration or request throttling [26,27,32], to application-level tradeoffs in the quality of server responses produced for clients vs. server response time [10,18], to the creation of new middleware or system abstractions that support the runtime adaptation of applications and systems in response to changes in user requirements or platform resources [7,13,15,20,24,25].…”