04.10.2013 Aufrufe

Strategien zur automatischen Objektmigration auf Grundlage ...

Strategien zur automatischen Objektmigration auf Grundlage ...

Strategien zur automatischen Objektmigration auf Grundlage ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

7 EVALUATION<br />

7 EVALUATION<br />

In diesem Kapitel werden die Messergebnisse zweier Beispielsimulationen für<br />

verschiedene Migrationsstrategien vorgestellt. Insgesamt wurden für die<br />

Evaluation 460 Messungen durchgeführt, deren Ergebnisse im Einzelnen im<br />

Anhang D nachgeschlagen werden können.<br />

Die Messergebnisse, welche in den Abschnitten 7.1 und 7.2 vorgestellt werden,<br />

wurden <strong>auf</strong> unterschiedlichen Rechnersystemen erzielt. Für die Messungen des<br />

Abschnitts 7.1 kamen ein Rechner mit zwei Pentium III Prozessoren mit 900<br />

MHz, ein Rechner mit einem Pentium III Prozessor mit 800 MHz und ein<br />

Rechner mit einem Pentium 4 Prozessor mit 1,70 GHz zum Einsatz. Die Messungen<br />

des Abschnitts 7.2 wurden <strong>auf</strong> zwei Rechnern mit jeweils einem<br />

Pentium 4 Prozessor mit 1,70 GHz und zwei Rechnern mit jeweils einem Pentium<br />

4 Prozessor mit 2.40 GHz durchgeführt. Zum Zeitpunkt der Messungen<br />

war Java in Version 1.4.2 und das Betriebssystem Linux (Red Hat) <strong>auf</strong> den<br />

verwendeten Rechnern installiert.<br />

Für die Initialplatzierung der Objekte beider Beispielsimulationen wurde eine<br />

zyklische Verteilungsstrategie eingesetzt. Durch den Einsatz dieser Verteilungsstrategie<br />

wurden die zu verteilenden Objekte bei jeder vergleichbaren<br />

Messung <strong>auf</strong> den selben Rechnern platziert.<br />

7.1 Unterschiede bei Migration und Replikation<br />

Für die Untersuchung der Unterschiede Instanzenanteil- und Klassenanteilrepräsentierender<br />

Objekte im Zusammenhang mit Migration und Replikation,<br />

wurde eine Simulation namens Post eingesetzt. Diese Simulation besteht aus<br />

drei Objekten, von denen ein Objekt (Posttasche) zwischen zwei nicht migrierbaren<br />

bzw. replizierbaren Thread-Objekten (Post und Briefträger) abwechselnd<br />

lesend und schreibend zugegriffen wird. Die Anwendung simuliert folgende<br />

Situation:<br />

Ein Briefträger trägt die in einer Posttasche befindlichen Briefe aus. Ist<br />

die Posttasche leer, geht er <strong>zur</strong> Post und lässt sie sich wieder <strong>auf</strong>füllen.<br />

Ist die Posttasche neu gefüllt, verteilt er alle in ihr befindlichen Briefe.<br />

Nachdem der Briefträger alle Briefe verteilt hat, und <strong>auf</strong> der Post keine<br />

Briefe mehr vorhanden sind, wird die Post geschlossen.<br />

Bei dieser Simulation können zwei Parameter konfiguriert werden, zum Einen<br />

die Anzahl der in der Posttasche pro Füllung befindlichen Briefe und zum<br />

Anderen die Anzahl der Füllungen der Posttasche.<br />

Durch die Variierung der Anzahl der Briefe pro Füllung wird die Anzahl der<br />

ohne Unterbrechung nacheinander von einem Thread-Objekt stattfindenden<br />

Zugriffe verändert. Im Gegensatz hierzu ändert die Verwendung unterschiedlicher<br />

Werte für die Anzahl der Füllungen der Posttasche, die Anzahl der<br />

Iterationen, der abwechselnd <strong>auf</strong> die Posttasche zugreifenden Thread-Objekte.<br />

65

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!