TornadIO2 ist Python-Server-Implementierung des Socket.IO Echtzeit-Transportbibliothek auf der Oberseite des Tornado-Framework.
TornadIO2 ist mit 0.7+ Version des Socket.IO kompatibel und implementiert die meisten Funktionen in Original Socket.IO Server-Software gefunden.
Was ist Socket.IO?
Socket.IO zielt darauf ab, in Echtzeit-Anwendungen in jedem Browser und mobile Geräte zu ermöglichen, verwischen die Unterschiede zwischen den verschiedenen Transportmechanismen. Es ist sorglosen Echtzeit 100% in JavaScript.
Sie können es verwenden, um Push-Service, Spiele, etc. Socket.IO werden Klienten Browser anpassen und effektivsten Transportprotokoll zur Verfügung verwenden zu bauen.
Erste Schritte
Um die Arbeit mit der TornadIO2 Bibliothek, müssen Sie einige grundlegende Tornado Wissen. Wenn Sie nicht wissen, wie es zu benutzen, lesen Sie bitte Tornado Tutorial, die hier zu finden sind.
Wenn Sie mit Tornado vertraut sind, haben folgende Unterstützung für Socket.IO zu Ihrer Anwendung hinzufügen:
1. Leiten Sie aus tornadio2.SocketConnection Klasse und überschreiben ON_MESSAGE Verfahren (on_open / on_close sind optional):
& Nbsp; Klasse MyConnection (tornadio2.SocketConnection):
& Nbsp; def ON_MESSAGE (self, message):
& Nbsp; Pass
2. Erstellen Sie TornadIO2 Server für Ihre Verbindung:
& Nbsp; meinrouter = tornadio2.TornadioRouter (MyConnection)
3. Fügen Sie Ihren Handler Routen zum Tornado-Anwendung:
& Nbsp; application = tornado.web.Application (
& Nbsp; MyRouter.urls,
& Nbsp; socket_io_port = 8000)
4. Starten Sie Ihre Anwendung
5. Sie haben Ihre socket.io Server auf Port 8000. Einfach laufen, oder?
Starten
Wir bieten maßgeschneiderte Version (schamlos von der SocketTornad.IO Bibliothek ausgeliehen) der Httpserver, der Beginn Ihres TornadIO Server vereinfacht.
Um ihn zu starten, müssen folgende (vorausgesetzt, Sie Anwendungsobjekt erstellt vor):
wenn __name__ == "__main__":
& Nbsp; socketio_server = Socket (Anwendung)
Socket wird Flash-Policy-Server automatisch starten, wenn erforderlich.
Wenn Sie nicht möchten, dass IOLoop sofort zu starten, übergeben auto_start = False als einen der Konstruktor-Optionen und dann manuell starten IOLoop.
Weitere Informationen
Für weitere Informationen besuchen Sie TornadIO2 Dokumentation und Beispielanwendungen.
Beispiele
Bestätigung
Ping Probe, die zeigt, wie die Ereignisse verwenden, um in der Anfrage-Antwort-Modus arbeiten. Es befindet sich im examples / Verzeichnis ackping.
Cross-Site-
Chat Probe, die zeigt, wie Cross-Site-Kommunikation funktioniert (Chat-Server auf Port 8002 ausgeführt wird, während HTTP-Server auf Port 8001 läuft). Es befindet sich im examples / crosssite Verzeichnis.
Events und Generator-basierte asynchrone API
Beispiel, das zeigt, wie Ereignisse und Generator-basierte API verwenden, um mit asynchronen Code zu arbeiten. Es befindet sich im examples / Verzeichnis gen.
Multiplexed
Ping und Chat-Demo läuft über eine Verbindung. Sie können es im examples / Multiplex-Verzeichnis zu ermöglichen.
Statistik
TornadIO2 sammelt einige Zähler, die Sie verwenden können, um Ihre Anwendungsleistung zu beheben. Beispiel in examples / Statistik Verzeichnis gibt einen Überblick, wie Sie diese Statistiken zu verwenden, um Echtzeit-Grafik zu zeichnen.
RPC-Ping-
Ping, die durch socket.io Veranstaltungen arbeitet. Es befindet sich im examples / RPCPing Verzeichnis.
Transporte
Einfache Ping / Pong-Beispiel mit Chat-ähnliche Oberfläche mit wählbarer Transporte. Es ist in den Beispielen / Transporte Verzeichnis
Eigenschaften .
- Unterstützung Socket.IO 0.8-Protokoll und damit verbundene Funktionen
- Vollständige Unicode-Unterstützung
- Unterstützung für Generator-basierte asynchrone Code (tornado.gen API)
- Statistik Erfassung (Pakete pro Sekunde, etc.)
- Aktiv beibehalten
Anforderungen :
- Python
Kommentare nicht gefunden