Ich weiß, dass es Comet-Server-Technologien, die dies tun, aber ich möchte etwas Einfaches und Eigengewachsen schreiben.MySQL trigger + notify eine lang-polling Apache/PHP-Verbindung
Wenn ein Datensatz in eine MySQL-Tabelle eingefügt wird, möchte ich, dass er diese Daten irgendwie mit einer Reihe von lang abgefragten Apache-Verbindungen unter Verwendung von PHP (oder was auch immer) kommuniziert. So "hören" mehrere Personen durch ihren Browser und die zweite MySQL INSERT passiert, wird an ihren Browser gesendet und ausgeführt.
Der einfache Weg ist, das PHP-Skript die MySQL-Datenbank abfragen zu lassen, aber das führt nicht wirklich vom Server aus und führt zu einer inakzeptablen Reihenfolge unnötiger Datenbankabfragen. Ich möchte diese Daten von MySQL zu der Long-Polling-Verbindung im Wesentlichen ohne die Listener überhaupt abfragen.
Irgendwelche Ideen zur Umsetzung?
Vielleicht ist der Auslöser könnte so etwas wie Memcached schreiben und die PHP, dass abfragen könnte? – phazei
PHP ist statisch und läuft nicht im Hintergrund. Es gibt einige Tricks aus dem Buch, wie man es als "Thread" erscheinen lässt, aber dann kommt das nächste Problem, aktualisieren Sie die Client-Seite. Ich würde sagen, dass die Abstimmung von AJAX durchgeführt werden muss. Es könnte genug sein, um nach dem letzten Änderungsdatum zu suchen (geschrieben von Triggern). Wenn es neuer ist, laden Sie die Seite neu. –