2011-01-10 15 views
0

Für eine Web-Anwendung arbeite ich auf ich die folgenden Anforderungen:Implementierung eines serverseitigen Push für eine kleine Anzahl von Kunden

  1. Clients über einen Web-Brower sich einloggen, um der Lage sein müssen.
  2. Nach der Anmeldung werden sie zu
    • Konfigurationen zu ändern (normal Request/Response) in der Lage sein
    • können die Alarme vom Server (eine serverseitige Push)
gesendet erhalten

Jetzt ist die Frage, wie Sie die Alarme implementieren. Ich dachte zuerst daran, einen Long-Polling-Ansatz (Comet) zu verwenden, aber da die Anzahl der Kunden definitiv auf 5-10 beschränkt ist, denke ich jetzt, dass ich mit einem einfacheren Ansatz fortfahren soll.

Welche Möglichkeiten habe ich? Wäre es in Ordnung, wenn die Clients nur den Server abfragen würden?

+0

Es hängt davon ab, wie lange eine Verzögerung akzeptabel ist. Ist 3 Sekunden OK? Ich bin sicher, dass eine Verzögerung von 3 Sekunden zwischen AJAX-Anrufen für Ihren Server kein Problem wäre (vorausgesetzt, Sie hatten eine schnelle Antwort). – gahooa

Antwort

1

5-10 Clients? Ich würde sie nur den Server abfragen lassen. Keine Notwendigkeit, dies zu überarbeiten.

1

Sie könnten ein Adobe Flash-Objekt verwenden, um eine Socket-Verbindung zum Server zu öffnen.

Dies würde ermöglichen, dass der Client und der Server tatsächlich "verbunden" sind, wodurch Sie auf dem Server wissen, dass Sie tatsächlich verbunden sind, oder wenn die Verbindung verloren geht.

Sie können auch ein einfaches Heartbeat-System einbinden, um eine "Bereitschafts" -Überprüfung jede Sekunde oder wenige zu ermöglichen.

Als eine Randnotiz ... Sind Sie sicher, dass eine Web-App die richtige Plattform dafür ist, im Gegensatz zu einer nativen GUI-Anwendung?

+0

Tatsächlich existiert bereits eine (sehr einfache) GUI-Lösung. Aber mein Chef besteht darauf, dies als Web-App zu realisieren: - /. Während die Flash-Lösung gut klingt, würde ich eine Lösung bevorzugen, die auf keinem Plugin auf der Clientseite hängt. – helpermethod