erbsensuppe: AJAX Polling: Eure Meinung zu verschiedenenen Verfahren

Beitrag lesen

Hi,

in diesem Thread

http://forum.de.selfhtml.org/archiv/2006/4/t127682/

ist schon mal ein Verfahren des Pollings diskutiert worden, das fuer eines meiner Projekte sehr vorteilhaft erscheint.

Kurzer Ueberblick:

Ich habe eine Statusseite, die verschiedene Geraete-Objekte enthaelt, die sich Messdaten aus einer DB holen. Die Seite enthaelt ein AJAX-Polling-Objekt, das permanent nach Statusaenderungen in der DB Ausschau haelt. Existieren Aenderungen, holt das Objekt die Daten ab und reicht sie an die Geraete-Objekte weiter, die dann ihr Aussehen oder die Messdaten aktualisieren.

So weit, so gut, das funktioniert wunderbar.

Es kann allerdings sein, dass zahlreiche Aenderungen auf einmal eintreten und das Polling-Objekt eine Menge zu tun hat. Ich moechte vermeiden, dass eine wesentliche Verzoegerung der Statusinformationen der Geraete auftreten oder das Polling-Objekt nicht hinterher kommt.

Daher meine Frage:

Welches der folgenden Verfahren ist Eurer Meinung nach effizienter oder unproblematischer im Betrieb?

a) IST-ZUSTAND: Das Polling-Objekt holt bei Aenderung die Daten aller betroffenen Geraete vollstaendig ab, die Weiterleitung der Daten geschieht ueber Javascript, die Geraete koennen selbst nicht pollen. Meine Befuerchtung ist, dass das Polling unter hoher Last "Verstopfung" bekommen koennte.

b) Das Polling-Objekt holt nur die IDs der Geraete ab, die eine Statusaenderung aufweisen und informiert die Geraete-Objekte, dass sie ihren Status per AJAX updaten sollen. Hier ist m.E. das Risiko einer Verstopfung geringer und das Verfahren kommt dem traditionellen Observer-Pattern schon etwas naeher. Allerdings sind dazu wiederum mehrere gleichzeitige HTTP-Requests der einzelnen Geraete noetig und ich bin mir nicht sicher, ob das einen erheblichen Performanceverlust darstellen koennte.

Wie ist Eure Meinung und/oder Erfahrung dazu?

Bin fuer jeden Tipp dankbar.

Danke und Gruesse
Martin