Development Tools

Tornado – asynchronous web framework and networking library

Tornado combines a web framework with an HTTP server and asynchronous networking library. Its event-driven design is suited to applications that keep many connections open at once, particularly real-time messaging, streaming services and long-polling endpoints.

A typical application registers request-handler classes with a routing object and uses the built-in server to accept connections. Tornado can also be used for lower-level network clients and services without building an entire website. Its integration with standard asynchronous programming facilities allows applications to combine HTTP handling with other non-blocking operations.

Tornado is particularly appropriate where a request cannot be processed as a short, blocking operation. Its HTTP and networking facilities can coexist in one process, but developers must be conscious of blocking libraries and move expensive operations off the event loop when necessary.

This is free and open source software.

Key Features

  • Non-blocking HTTP server handles large numbers of concurrently open connections.
  • RequestHandler classes implement HTTP endpoints and response processing.
  • WebSocket handlers provide bidirectional communication with connected clients.
  • Asynchronous HTTP client sends requests without blocking the event loop.
  • Routing facilities map paths and hosts to their handlers.
  • Flexible template engine renders pages with escaping and template inheritance.
  • Secure-cookie helpers, authentication support and CSRF protection.
  • IOLoop, IOStream and TCP utilities for non-HTTP network applications.
  • Integration with asyncio lets developers use compatible asynchronous libraries.
  • Testing helpers support asynchronous test cases and HTTP clients.
  • Process utilities allow server processes to be run across multiple CPU cores.
  • Asynchronous stream utilities implement TCP-based client and server communication.
  • Configurable logging records server and application events for diagnosis.
  • HTTP request parsing and cookies support ordinary web application requirements.

Website: www.tornadoweb.org/en/stable/
Support:
Developer: The Tornado Authors
License: Apache License 2.0

Tornado is written in Python. Learn Python with our recommended free books and free tutorials.


Related Software

Python Application Servers
TornadoWeb framework, web server, and asynchronous networking library
GunicornPython WSGI HTTP Server
Phusion PassengerWeb server and application server for Ruby, Python and Node.js
uWSGIAims at developing a full stack for building hosting services
TwistedNetworking engine supporting numerous protocols such as a web server
ZopeZope stands for "Z Object Publishing Environment"
CherryPyPythonic, object-oriented web framework

Read our verdict in the software roundup.

Python Frameworks
DjangoHigh-level web application framework
DashBuild analytical web applications without JavaScript
TornadoFramework, scalable web server, and asynchronous networking library
TurboGearsFramework based on the ObjectDispatch paradigm
MasoniteDev tool with all the features needed for rapid development
RobynPython web framework designed for high performance
ReflexLibrary to build full-stack web apps in pure Python
FrappeLow-code, metadata-driven web application framework
ZopeObject-oriented web application server
EmmettFull-stack Python web framework
PY4WEBSuccessor to web2py
CubicWebSemantic web framework
ReahlPython-only web framework
django-hotsauceRapid web application development and testing
Jam.pyWeb front-end application generator
GrokWeb framework based on Zope Toolkit technology
web2pyFull-featured, full-stack framework for rapid development

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted