Tornado

Tornado is a Python web framework and asynchronous networking library

Tornado Logo

Overview

Tornado is designed for building scalable, non-blocking web applications

Key Features

Asynchronous I/O

Non-blocking I/O for high performance

import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    async def get(self):
        self.write("Hello, world")

def make_app():
    return tornado.web.Application([
        (r"/", MainHandler),
    ])

if __name__ == "__main__":
    app = make_app()
    app.listen(8888)
    tornado.ioloop.IOLoop.current().start()

WebSocket Support

Built-in WebSocket support

class EchoWebSocket(tornado.websocket.WebSocketHandler):
    def open(self):
        print("WebSocket opened")

    def on_message(self, message):
        self.write_message(u"You said: " + message)

    def on_close(self):
        print("WebSocket closed")

Real-time Features

Ideal for real-time web services and long polling

Installation

pip install tornado

Common Use Cases

Advantages

Disadvantages

Official Documentation

Tornado Documentation

Version Information