Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server
Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server
Download (5Mb) - oops/ - Oldenburger Online-Publikations-Server
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
7.3 Backend 105<br />
Die Entwicklung der “nicht dauerhaften” Art von Queues ist mehr mit der nicht-relationalen Datenbank<br />
namens Redis verbunden, wie im kommenden Paragraph erläutert wird.<br />
Redis ist ein “<strong>Server</strong> für Datenstrukturen”, der ein In-Memory Datenspeicherungsmodell für eine<br />
schnelle Anfragebearbeitung verwendet. Im Vergleich zu anderen “key-value store” Datenbanksystemen<br />
ist Redis in der Lage, komplexere Datenstrukturen zu persistieren, wie Maps (Hashes/Dictionaries),<br />
Mengen, sortierte Mengen und Listen. Weitere Details sind in [MO11] zu finden.<br />
AMQP-Modell und .Architektur für die Realisierung des Kommunikationskanals<br />
Konkret wurde das folgende Modell für den Kommunikationskanal in der AMQP-Terminologie<br />
umgesetzt, zusammen mit dem genannten “NoSQL”, echtzeitfähigen Datenbanksystem namens Redis:<br />
Abbildung 7.2: Überblick des Kommunikationskanals, in der AMQP-Terminologie, mit<br />
dauerhaften und kurzlebigen Queues sowie anwendungsspezifischen Erweiterungen.<br />
In der Abbildung 7.2 wird das verwendete AMQP-Modell für den Kommunikationskanal dargestellt.<br />
Die Anwendungen können die Rollen wechseln, sodass die Wohnungseigentümer Android App<br />
auch in der Lage ist, Mitteilungen zu empfangen und umgekehrt. Es wurde jeweils ein Exchange implementiert,<br />
der die dauerhaften (d.h. “Offline” oder persistierte) Mitteilungen und entsprechend die<br />
nicht langlebigen Mitteilungen (d.h. Mitteilungen des Typs “Instant Messaging”) zu einer Queue weiterleitet<br />
bzw. routet.<br />
Die Skalierbarkeit der Lösung kann durch die Existenz mehrerer Queues begründet werden, obwohl<br />
für den Basis-Anwendungsfall nur eine Queue pro Mieter erstellt wird. In weiteren Fällen wie z.B.<br />
eine höhere Anzahl von Mietern, die einzelne Kommunikationen mit dem Mieter durchführen möchten,<br />
bleibt die Architektur bestehen. Ein weiterer Aspekt der Implementierung ist die Darstellung der<br />
“flush” Operation. Hiermit wird der Umgang mit Queues definiert, die von einer nicht dauerhaften