Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739
HWR-Chat: Pflichtenheft – It2010-g1

HWR-Chat: Pflichtenheft


Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739
Aus It2010-g1
Wechseln zu: Navigation, Suche
(Produktfunktionen bzw. Projektumsetzung)
(Datenerhaltungskonzept: Server Data Access Object)
Zeile 328: Zeile 328:
 
*Die Anmeldung der User soll am Server erfolgen. Dabei lädt der Nutzer sein Profil sowie seine ihm bekannten Kontakte und Gruppen. Diese Daten müssen daher für den Server vorgehalten werden, damit dieser sie bei Bedarf speichern, bearbeiten oder auch löschen kann. Um auch bei einem möglichen Absturz oder beim Herunterfahren konsistente Daten zu gewährleisten, soll hierzu eine Datenbank genutzt werden.
 
*Die Anmeldung der User soll am Server erfolgen. Dabei lädt der Nutzer sein Profil sowie seine ihm bekannten Kontakte und Gruppen. Diese Daten müssen daher für den Server vorgehalten werden, damit dieser sie bei Bedarf speichern, bearbeiten oder auch löschen kann. Um auch bei einem möglichen Absturz oder beim Herunterfahren konsistente Daten zu gewährleisten, soll hierzu eine Datenbank genutzt werden.
  
*Für die konkrete Implementierung bedeutet das, dass es zwei unterschiedliche Datenmodelle gibt. Zum einen die Datenbank selbst (und deren Schnittstelle um Daten auszulesen/speichern) und einem internen Datenmodell des Servers. Beim initialen Start wird die Datenbasis des Servers mit der Datenbank synchronisiert, was im konkreten Fall bedeutet, dass alle Nutzer und Gruppen geladen werden. Werden nun lesende Anfragen gestellt, wird nur die ServerDatenStruktur benutzt, die Datenbank bleibt unangetastet (Performance).
+
*Für die konkrete Implementierung bedeutet das, dass es zwei unterschiedliche Datenmodelle gibt. Zum einen die Datenbank selbst (und deren Schnittstelle um Daten auszulesen/speichern) und einem internen Datenmodell des Servers. Beim initialen Start wird die Datenbasis des Servers mit der Datenbank synchronisiert, was im konkreten Fall bedeutet, dass alle Nutzer und Gruppen geladen werden. Werden nun lesende Anfragen gestellt, wird nur die ServerDatenStruktur benutzt, die Datenbank bleibt unangetastet (Performance). Erst wenn Daten verändert werden, muss ein Abgleich mit der Datenbank und dem Server erfolgen, damit die Daten konsistent bleiben.
Erst wenn Daten verändert werden muss ein Abgleich mit der Datenbank und dem Server erfolgen, damit die Daten konsistent bleiben.
+
  
 
*Die Datenerhaltung auf dem Server erfolgt durch einen Liste von Benutzerobjekten, die wiederum Referenzen auf andere Gruppen/User Objekte besitzen. Diese Objektorientiertheit hat den Vorteil, das bei Änderung eines Users, die User die auf diesen User referenziert worden sind quasi sofort die aktuellen Daten bereithält. Der Server muss bei Änderungen nur dafür Sorge tragen, dass alle Freunde die diesen Nutzer kennen diese Änderung auch mitbekommen.
 
*Die Datenerhaltung auf dem Server erfolgt durch einen Liste von Benutzerobjekten, die wiederum Referenzen auf andere Gruppen/User Objekte besitzen. Diese Objektorientiertheit hat den Vorteil, das bei Änderung eines Users, die User die auf diesen User referenziert worden sind quasi sofort die aktuellen Daten bereithält. Der Server muss bei Änderungen nur dafür Sorge tragen, dass alle Freunde die diesen Nutzer kennen diese Änderung auch mitbekommen.

Version vom 7. November 2011, 21:05 Uhr

Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Projekte
Werkzeuge