Brüllmann, Timon and Hofmaier, Lukas and Kohler, Raphael (2012) Object Caching. Student Research Project thesis, HSR Hochschule für Technik Rapperswil.
BerichtObjectCaching.pdf
Download (960kB) | Preview
Abstract
Bei der Firma staila technologies wird das Datenverarbeitungssystem Mercury
entwickelt, welches Clients ermöglicht, Methoden von Objekten, die auf
dem Server sind, über das Netzwerk aufzurufen. Um
Lost Update-Fehler zu verhindern und die Performance durch Objektreplikation zu steigern, wurde
ein Konzept entwickelt. Anhand des Konzeptes wurden zwei Prototypen erstellt. Beim ersten Prototypen
handelt es sich um ein vereinfachtes RMI-System, welches eine
currency control beinhaltet. Um
Lost Updates zu verhindern, wird das
Verfahren Optimistic Concurrency eingesetzt.
Beim zweiten Prototypen wurde zusätzlich zur
Concurrency Control ein
lokaler Cache implementiert.
Um die Funktionalität und die Performance der Prototypen zu vergleichen,
wurde ein Test-Framework implementiert.
Mit Hilfe des Frameworks wurden mehrere, praxisbezogene Szenarien durchgespielt.
Gemessen wurden dabei die Zeiten, welche zur Ausführung der Lese- und Schreiboperationen gebraucht wurden, sowie die Anzahl der aufgetretenen
Konflikte.
Grundsätzlich kann gesagt werden, dass sich das Cache-System bei allen Szenarien
als sehr gut bewährt hat, in welchen viele Lesezugriffe getätigt werden
mussten. Der Cache bietet bei Lesezugriffen eine Leistungssteigerung um den
Faktor 400. Dies war zu erahnen, da der Zugriff auf den lokalen Speicher
natürlich viel schneller ist, als der Zugriff über das Netzwerk.
Bei permanent nur schreibenden Clients, skaliert das System ohne Cache
hingegen besser. Bei acht Clients erreicht es bei den schreibenden Zugriffen
eine Leistungssteigerung gegenüber dem System mit Cache um den Faktor
170. Die Zeit, um einen schreibenden Zugriff abzuwickeln, ist bei diesem System immer gleich gross. Beim System mit Cache, steigt die benötigte Zeit
für schreibende Zugriffe bei steigender Anzahl Clients, sehr stark an.
Item Type: | Thesis (Student Research Project) |
---|---|
Subjects: | Topics > Software > Refactoring Topics > Software > Performance Topics > Software > Testing and Simulation Technologies > Network Metatags > IFS (Institute for Software) |
Divisions: | Bachelor of Science FHO in Informatik > Student Research Project |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Joller, Josef UNSPECIFIED Thesis advisor Ruedi, Stoop UNSPECIFIED |
Date Deposited: | 13 Aug 2012 11:33 |
Last Modified: | 13 Aug 2012 11:33 |
URI: | https://eprints.ost.ch/id/eprint/201 |