Push Notification

Hallo,
ich werde in kürze ein Rollenspiel programmieren.
Ich habe vor eine Art Privatchat zu machen, ein JS-Fenster, über das man mit anderen Spielern chatten kann, ähnlich wie ICQ.

Ich hatte mal in einem PHP-Buch in einem Buchladen aufgegriffen, dass es dafür eine andere Möglichkeit gibt als ständig in der Datenbank abzufragen ob es etwas neues gibt. Bei dem der Server die Message pusht.
Weis jemand wie das geht - wie man es nennt?

Hallo

Webseiten funktionieren eigentlich so:
Browser stellt die Verbindung zum Server her, fragt nach Daten, Server liefert Daten, Verbindung wird geschlossen.

Es ist nicht möglich, dass der Server die Verbindung zum Browser herstellt, denn die üblichen Browser nehmen keine Verbindungen an und wenn der Nutzer hinter einer Firewall sitzt, geht das schon gar nicht.

Der Browser müsste also die Verbindung herstellen und die müsste dann dauerhaft offen bleiben, damit der Server bei Bedarf was senden kann. PHP ist aber nicht dazu gedacht, mit einer dauerhaften Verbindung zu arbeiten und bricht je nach Konfiguration die Verbindung nach einiger Zeit automatisch ab. Mit diesem Mechanismus wird verhindert, dass Skripte mit Endlosschleifen den Server belasten.

Also würd ich mal sagen PHP ist für so ein Vorgehen ungeeignet.

Gruß Johannes

es handelte sich aber um ein PHP buch - leider kann ich mich nur ganz wenig errinnern. Gibt es denn eine andere Lösung, die einen schnellen Nachrichtentransfer bei wenig Serverbelastung möglich macht?

du kann mit Javascript und Ajax alle paar Millisekunden auf neue Nachrichten pollen. Es gibt ja ein paar Chat Implementierungen mit php. Schau sie dir mal an.

Hallo

Also wenn du wirklich eine dauerhafte Verbindung haben willst, musst du wohl schwerere Geschütze auffahren. Z.B. ein Java-Applet im Browser und ein eigene Chat-Serversoftware. Dafür musst du dann aber auch entsprechende Rechte auf dem Server haben.

Oder du nimmst einfach die etwas höhere Serverlast mit PHP in Kauf.

Gruß Johannes