Resource management and performance control for staged design-based services [Elektronische Ressource] / vorgelegt von Mohammad Shadi Al-Hakeem
172 pages
English

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Resource management and performance control for staged design-based services [Elektronische Ressource] / vorgelegt von Mohammad Shadi Al-Hakeem

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus
172 pages
English
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description

Resource Management and Performance Control for Staged design-Based Services Vorgelegt von M.Sc. Mohammad Shadi Al-Hakeem aus Damaskus – Syrien von der Fakultät IV – Elektrotechnik und Informatik der Technischen Universität Berlin zur Erlangung des akademischen Grades Doktor der Ingenieurwissenschaften -Dr.-Ing- genehmigte Dissertation Promotionsausschuss: Vorsitzender: Prof. Dr. Odej Kao Berichter: Prof. Dr. Hans-Ulrich Heiß rof. Dr. Gero Mühl Tag der wissenschaftlichen Aussprache: 16.12.2010 Berlin 2010 D 83 ﻢﻴﺣﺮﻟﺍ ﻦﲪﺮﻟﺍ ﻟﻠﻪﺍ ﻢﺴﺑ In the name of Allah, the Beneficent, the Merciful. To my wife Amani, To my daughters Sham and Yamam, To my son Mohammad Yamen, To my Mother and to the soul of my Father, To my Sisters and Brothers, To my Friends, To those I love and those who love me… AbstractThe staged architecture has emerged as an approach to implement highly con-current Internet services. Staging means that the functionality of the servercode is broken down into computational stages with each stage performs someaspect of request processing. A client request would then be processed alonga pipeline of these stages. This architecture allows services to behave well andgracefully handle overload, in addition to increase code modularity and sim-plify service design. However, Staged architecture has introduced other designchallenges related to resource management and performance control.

Sujets

Informations

Publié par
Publié le 01 janvier 2010
Nombre de lectures 9
Langue English
Poids de l'ouvrage 2 Mo

Extrait



Resource Management and Performance
Control for Staged design-Based Services

Vorgelegt von
M.Sc.
Mohammad Shadi Al-Hakeem
aus Damaskus – Syrien

von der Fakultät IV – Elektrotechnik und Informatik
der Technischen Universität Berlin
zur Erlangung des akademischen Grades
Doktor der Ingenieurwissenschaften
-Dr.-Ing-

genehmigte Dissertation

Promotionsausschuss:
Vorsitzender: Prof. Dr. Odej Kao
Berichter: Prof. Dr. Hans-Ulrich Heiß rof. Dr. Gero Mühl

Tag der wissenschaftlichen Aussprache: 16.12.2010

Berlin 2010
D 83
ﻢﻴﺣﺮﻟﺍ ﻦﲪﺮﻟﺍ ﻟﻠﻪﺍ ﻢﺴﺑ

In the name of Allah, the Beneficent, the Merciful.






To my wife Amani,
To my daughters Sham and Yamam,
To my son Mohammad Yamen,
To my Mother and to the soul of my Father,
To my Sisters and Brothers,
To my Friends,
To those I love and those who love me…
Abstract
The staged architecture has emerged as an approach to implement highly con-
current Internet services. Staging means that the functionality of the server
code is broken down into computational stages with each stage performs some
aspect of request processing. A client request would then be processed along
a pipeline of these stages. This architecture allows services to behave well and
gracefully handle overload, in addition to increase code modularity and sim-
plify service design. However, Staged architecture has introduced other design
challenges related to resource management and performance control.
A bottleneck stage in the work-flow of requests processing will limit the overall
system throughput even though other stages are isolated from this bottleneck
stage and can support a higher performance. For this reason care must be
taken to avoid bottlenecks. A solution to adjust the throughput is to allocate
more resources to a stage if it is becoming a bottleneck, this in turn may force
other stages into becoming a bottleneck. Since all stages are competing for the
same resources additional effects may take place and give rise to instability or
oscillations.
Staged design was originally introduced as a programming abstraction to im-
prove memory accesses behavior of highly concurrent Internet servers by im-
plementing cohort scheduling policies which batch the execution of requests
at each stage. As a result existing scheduling policies in staged design-based
applications are mechanisms to increase the benefit from cache locality within
the individual stages, rather than to balance resource allocation to avoid bot-
tleneck stages and control the system performance. Consequently, dynamic
changes in stages requirements lead to instability and oscillations in perfor-
mance under different load conditions. In addition, achieving a target perfor- in such systems is a hard job and often depends on manual parameters
tuning by expert administrators or benchmarks experiments.
To address these challenges, this thesis suggests a three-layers control ar-
chitecture for resource management and performance control of staged appli-
cations based on the Staged Event Driven Architecture (SEDA), which is the
istate of the art of the staged design. Then an adaptive resource allocation
policy and a performance control approach are presented, which follow this
three-layers control architecture.
The proposed approach benefits from the advantages of SEDA to support highly-
concurrent demands and makes use of feedback-based controllers to manage
the system resources and control its performance. The resource controller
allocates resources to stages depending on run time observations of stages
load and performance, and the feedback based performance controller adapt
system parameters to achieve performance targets and guarantee the desired
quality of service.
We validate the proposed scheduling policy and compare it with other schedul-
ing policies under different load conditions through a simulation study. Re-
sults demonstrate that our approach can allocate system resources automat-
ically and dynamically to achieve a superior performance while avoid perfor-
mance degradation under overload. We demonstrate also the ability of the
performance controller to adjust the system at run-time dynamically and au-
tomatically to maintain the desired performance target under a variety of dy-
namic changes in the system.
iiZusammenfassung
Die Staged-Architektur ist als ein Ansatz für Internet-Dienste mit hoher Neben-
läufigkeit entwickelt worden. “Staging” bedeutet dabei, dass die Funktionalität
des Dienstes in einzelne Stufen zerlegt wird, die jeweils einige Aspekte der
Berechnung ausführen. Eine Client-Anfrage wird dann entlang einer Pipeline
dieser Stufen bearbeitet. Diese Architektur ermöglicht es dem Dienst, Überlast
gut zu behandeln und erhöht zudem die Modularität des Codes und vereinfacht
das Design. Allerdings haben sich mit Einführung der Staged-Architektur neue
Herausforderungen im Design ergeben hinsichtlich der Ressourcenverwaltung
und der Performance-Steuerung.
Eine Engpass-Phase innerhalb des Flusses der Verarbeitung der Anfragen re-
duziert den Gesamtdurchsatz selbst dann, wenn andere Stufen von dieser
Engpass-Phase isoliert sind und eine höhere Leistung ermöglichen würden.
Aus diesem Grund muss beim Design sorgsam darauf geachtet werden, En-
gpässe zu vermeiden. Eine mögliche Lösung ist es, der Engpass-Stufe mehr
Ressourcen zuzuweisen, dies kann allerdings dazu führen, dass wiederum an-
dere Stufen zum Engpass werden. Da alle Stufen um die gleichen Ressourcen
konkurrieren, können zusätzliche Überlagerungen auftreten, die zu Instabil-
ität oder einem Aufschwingen führen können.
Das Staged Design wurde ursprünglich als eine Programmierungs-Abstraktion
vorgestellt zur Verbesserung des Speicherzugriffsverhaltens von hochgradig
nebenläufigen Internet-Servern durch die Umsetzung von "Cohort Scheduling"-
Ansätzen, die die Ausführung von Anfragen der einzelnen Stufen bündeln.
Damit sind die bestehenden Ansätze des Schedulings im Staged Design mehr
darauf ausgelegt, die Vorteile der Cache-Lokalität innerhalb der Stufen zu
nutzen als die Ressourcenzuteilung zwischen den Stufen zu balanzieren und
Engpässe zu vermeiden. Folglich führen dynamische Veränderungen in den
Anforderungen der Stufen zu Instabilität und Schwingungen unter verschiede-
nen Lastbedingungen. Weiterhin ist es kompliziert, in solchen Systemen eine
iiivorgegebene Performance zu erreichen – dies basiert häufig auf manuellem
Tuning der Parameter durch Experten oder anhand der Ergebnisse aufwendi-
ger Benchmarks.
Um diesen Herausforderungen zu begegnen, schlägt diese Arbeit eine Drei-
Schichten Architektur für Ressourcen Management und Performance Steuerung
von Anwendungen vor, die auf der Stage Event Driven Architecture (SEDA, ak-
tuelle Variante des Staged Design) basieren. Es werden eine adaptive Ressourcen
zuweisung und ein Ansatz zur Performance-Steuerung vorgestellt, die dieser
Drei-Schichten-Architektur folgen.
Der vorgeschlagene Ansatz profitiert von den Vorteilen der SEDA zur Unter-
stützung massiv nebenläufiger Nachfragen und nutzt eine Feedback-basierte
Steuerung zur Verwaltung der System-Ressourcen und der Steuerung der Leis-
tung. Der Ressourcen-Controller weist die Ressourcen den einzelnen Stufen in
Abhängigkeit von zur Laufzeit getätigten Beobachtungen der Last und Perfor-
mance der Stufe zu. Der Feedback-basierte Performance-Controller passt die
Systemparameter dynamisch an, um Performance-Ziele zu garantieren sowie
die gewünschte Qualität der Dienstleistung zu erreichen.
Der vorgeschlagene Scheduling-Ansatz wird validiert und mit anderen An-
sätzen unter verschiedenen Lastbedingungen mittels einer Simulation vergle-
ichen. Die Ergebnisse zeigen, dass der Ansatz Ressourcen dynamisch zuweisen
kann und eine höhere Performance erreichen kann, während eine Herabset-
zung der Performance unter Überlast vermieden wird. Weiterhin wird die
Fähigkeit des Performance-Controller demonstriert, die Systemparameter zur
Laufzeit dynamisch und automatisch anzupassen, um das gewünschte Perfor-
mance Ziel auch unter einer Vielzahl dynamischer Veränderungen im System
zu erreichen.
ivAcknowledgment
Living in Berlin and doing this PhD has been a wonderful experience for me.
I feel deeply indebted to a number of people who have contributed to my suc-
cess, and I want to express my gratitude to them here.
First and foremost, I would like to thank my supervisor Prof. Dr. Hans-Ulrich
Heiß for giving me the opportunity to be in his research group and for his guid-
ance and patience until finishing this thesis. I hope to be able to emulate him
as a teacher and as a researcher. I am also grateful to Prof. Dr.-Ing. habil. Gero
Mühl, and I would like to thank him for taking interest in my work and provid-
ing valuable comments. Special thanks to Dr.-Ing. Jan Richling for supporting
me in the different phases of this thesis and for the many fruitful discussions.
I owe a great deal of thanks to Pro

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents