Tornado
Python networking for long-lived connections
What it does
Tornado combines a Python web framework with asynchronous networking libraries, using nonblocking I/O for applications that maintain long-lived connections and other network-oriented interactions across the service’s active clients.
When to use it
For WebSocket applications, examine handler and coroutine guides to design message handling and the behavior used when a connection closes.