phpbar.de logo

Mailinglisten-Archive

[php] Performanter php Chat

[php] Performanter php Chat

Andreas Müller php at universalware.de
Die Nov 4 07:32:26 CET 2003


Hallo zusammen,
ich habe vor einiger Zeit selbst einen Chat gebaut und habe leitvoll
mitbekommen das MySQL als Chatgrundlage recht schnell in die Knie gehen
kann.

> Einen Chat in PHP zu basteln, ohne dafür eine Datenbank zu verwenden
> ist allerdings auch nicht ganz einfach und bedarf einiger Tricks.
> Das Ganze ließe sich zum Beispiel auf Textdateien (eine Pro Raum,
> oder Benutzer...) realisieren.
> Frage ist in jedem Fall die Synchronisation - die kostet Zeit und
> bereitet Kopfschmerzen.

Und genau so realisiere ich es und das ist alles andere als schwer. Jeder
benutzer bekommt seine Textdatei die nach Chat-Session Ende gelöcht wird. In
die Datei wird geschrieben sobald der Benutzer eine Nachricht angeziegt
bekommen soll. Ein Lesethread (HTML Streaming) liest dabei aus der Datei und
gibt es an den Client aus. Der Trick dabei besteht pro Benutzer die Position
in der Date zu merken bis zu der man gelesen hat. Dort kann man beim
nächsten Leseversuch wieder aufsetzen. Das ganze läuft bis heute extrem
stabil - und sehr schnell. Denn keine Datenbank wird pro Sekunde x-fach mit
Abfragen zugeballert.

Gruß,
Andreas



php::bar PHP Wiki   -   Listenarchive