Tornado a été initialement développé par la startup Friendfeed (rachetée par Facebook) et passé depuis en open source.
Tornado est composé d'une part d'un moteur asynchrone, et d'autre part d'un framework web. Ces deux parties sont conçues pour fonctionner ensemble, mais peuvent être utilisées séparément si on le souhaite.
Le moteur asynchrone s'appuie sur une boucle événementielle (event loop ou reactor), et fournit des opérations réseau non bloquantes de bas niveau, ainsi qu'un client et un serveur HTTP asynchrones.
Le framework web est simple et léger, avec quelques spécificités liés au mode asynchrone. Il permet ainsi de gérer de très nombreuses connexions simultanées, et d'implémenter des applications web « temps réel ».