TornadIO2 είναι Python εφαρμογή server της βιβλιοθήκης σε πραγματικό χρόνο μεταφορά Socket.IO στην κορυφή του πλαισίου Tornado.
TornadIO2 είναι συμβατή με 0.7+ έκδοση του Socket.IO και υλοποιεί τα περισσότερα από τα χαρακτηριστικά που βρέθηκαν στην αρχική του λογισμικού διακομιστή Socket.IO.
Τι είναι Socket.IO;
Socket.IO έχει ως στόχο να καταστήσει δυνατή εφαρμογές σε πραγματικό χρόνο σε κάθε πρόγραμμα περιήγησης και την κινητή συσκευή, θολώνοντας τις διαφορές μεταξύ των διαφόρων μηχανισμών μεταφοράς. Είναι ξέγνοιαστος σε πραγματικό χρόνο 100% σε JavaScript.
Μπορείτε να το χρησιμοποιήσετε για να οικοδομήσουμε ώθηση υπηρεσία, παιχνίδια, κλπ Socket.IO θα προσαρμοστούν στο πρόγραμμα περιήγησης των πελατών και θα χρησιμοποιήσει τα πιο αποτελεσματικό πρωτόκολλο μεταφοράς.
Ξεκινώντας
Για να αρχίσετε να εργάζεστε με τη βιβλιοθήκη TornadIO2, πρέπει να έχετε κάποιες βασικές γνώσεις Tornado. Αν δεν ξέρετε πώς να το χρησιμοποιήσετε, παρακαλούμε διαβάστε Tornado φροντιστήριο, το οποίο μπορείτε να βρείτε εδώ.
Εάν είστε εξοικειωμένοι με Tornado, κάνετε τα ακόλουθα για να προσθέσετε υποστήριξη για Socket.IO την αίτησή σας:
1. προέρχονται από tornadio2.SocketConnection τάξη και να παρακάμψετε on_message μέθοδο (on_open / είναι on_close προαιρετικό):
& Nbsp? Τάξη MyConnection (tornadio2.SocketConnection):
& Nbsp? Def on_message (self, μήνυμα):
& Nbsp? Πέρασμα
2. Δημιουργία του server TornadIO2 για τη σύνδεσή σας:
& Nbsp? MyRouter = tornadio2.TornadioRouter (MyConnection)
3. Προσθέστε διαδρομές χειριστή σας στην εφαρμογή Tornado:
& Nbsp? Εφαρμογή = tornado.web.Application (
& Nbsp? MyRouter.urls,
& Nbsp? Socket_io_port = 8000)
4. Ξεκινήστε την εφαρμογή σας
5. Έχετε διακομιστής socket.io σας να λειτουργεί στη θύρα 8000. Απλά, σωστά;
Εκκίνηση
Παρέχουμε προσαρμοσμένη έκδοση (ξεδιάντροπα δανειστεί από τη βιβλιοθήκη SocketTornad.IO) του HttpServer, η οποία απλοποιεί την εκκίνηση του διακομιστή σας TornadIO.
Για να ξεκινήσετε, κάνετε τα ακόλουθα (υποθέτοντας ότι έχετε δημιουργήσει αντικείμενο αίτησης πριν):
αν __name__ == "__main__":
& Nbsp? Socketio_server = SocketServer (εφαρμογή)
SocketServer θα ξεκινήσει αυτόματα διακομιστή πολιτικών Flash, εάν απαιτείται.
Εάν δεν θέλετε να ξεκινήσετε αμέσως IOLoop, περνούν auto_start = False ως μία από τις επιλογές κατασκευαστή και, στη συνέχεια, ξεκινήστε το χέρι IOLoop.
Περισσότερες πληροφορίες
Για περισσότερες πληροφορίες, ελέγξτε TornadIO2 τεκμηρίωση και δείγματα εφαρμογών.
Παραδείγματα
Αναγνώριση
Ping δείγμα το οποίο δείχνει πώς να χρησιμοποιούν τα γεγονότα για να εργαστούν σε κατάσταση αίτησης-απάντησης. Είναι στο παραδείγματα / ackping κατάλογο.
Cross-Site
Συνομιλία δείγμα που δείχνει πώς λειτουργεί επικοινωνία cross-site (chat διακομιστής τρέχει στη θύρα 8002, ενώ διακομιστή HTTP τρέχει στη θύρα 8001). Είναι στο παραδείγματα / crosssite κατάλογο.
Εκδηλώσεις και γεννήτρια που βασίζεται async API
Παράδειγμα το οποίο δείχνει πώς να χρησιμοποιούν τα γεγονότα και γεννήτρια με βάση το API για να συνεργαστεί με ασύγχρονη κώδικα. Είναι στο παραδείγματα / κατάλογο gen.
Πολυπλεγμένου
Ping και συνομιλία demo τρέχει μέσα από μία σύνδεση. Μπορείτε να το δείτε στα παραδείγματα / πολυπλεξίας κατάλογο.
Στατιστικά
TornadIO2 συλλέγει κάποιες μετρητές που μπορείτε να χρησιμοποιήσετε για να αντιμετωπίσετε την απόδοση των εφαρμογών σας. Παράδειγμα στον κατάλογο παραδείγματα / stats δίνει μια ιδέα για το πώς μπορείτε να χρησιμοποιήσετε αυτά τα στατιστικά στοιχεία να σχεδιάσει σε πραγματικό χρόνο γράφημα.
RPC ping
Ping που λειτουργεί μέσω socket.io γεγονότα. Είναι στο παραδείγματα / κατάλογο rpcping.
Μεταφορές
Απλή πινγκ / πονγκ παράδειγμα με τη συνομιλία-όπως διεπαφή με δυνατότητα επιλογής μεταφορές. Είναι στα παραδείγματα / μεταφέρει κατάλογο
Χαρακτηριστικά :.
- Υποστηρίζει Socket.IO 0,8 πρωτοκόλλου και τα συναφή χαρακτηριστικά
- Πλήρης υποστήριξη Unicode
- Υποστήριξη για γεννήτρια που βασίζεται κώδικα ασύγχρονης (tornado.gen API)
- Στατιστικά σύλληψη (πακέτα ανά δευτερόλεπτο, κλπ)
- συντηρείται ενεργά
Απαιτήσεις :
- Python
Τα σχόλια δεν βρέθηκε