{"name":"Tornado: A Powerful Python Web Framework and Asynchronous Library","description":"Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. It utilizes non-blocking I/O to efficiently handle tens of thousands of open connections. This makes it an ideal choice for applications requiring long-lived connections, such as long polling, WebSockets, and real-time services.","github":"https://github.com/tornadoweb/tornado","url":"https://osrepos.com/repo/tornadoweb-tornado","source":"osrepos.com","sourceDescription":"This repository profile is provided by osrepos.com, an open source repository discovery platform.","repositoryProfile":"https://osrepos.com/repo/tornadoweb-tornado","generatedFor":"open source discovery and AI-assisted research","markdown":"https://osrepos.com/repo/tornadoweb-tornado.md","json":"https://osrepos.com/repo/tornadoweb-tornado.json","topics":["asynchronous","python","web framework","networking","real-time","high performance"],"keywords":["asynchronous","python","web framework","networking","real-time","high performance"],"stars":null,"summary":"Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. It utilizes non-blocking I/O to efficiently handle tens of thousands of open connections. This makes it an ideal choice for applications requiring long-lived connections, such as long polling, WebSockets, and real-time services.","content":"## Introduction\n\nTornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. It stands out for its use of non-blocking network I/O, enabling it to scale efficiently to tens of thousands of open connections. This makes Tornado an excellent choice for applications that require persistent connections, such as long polling, WebSockets, and real-time services.\n\n## Installation\n\nGetting started with Tornado is straightforward. You can install it using pip:\n\nbash\npip install tornado\n\n\n## Examples\n\nThis simple \"Hello, world\" example demonstrates a basic web application with Tornado:\n\npython\nimport asyncio\nimport tornado\n\nclass MainHandler(tornado.web.RequestHandler):\n    def get(self):\n        self.write(\"Hello, world\")\n\ndef make_app():\n    return tornado.web.Application([\n        (r\"/\", MainHandler),\n    ])\n\nasync def main():\n    app = make_app()\n    app.listen(8888)\n    await asyncio.Event().wait()\n\nif __name__ == \"__main__\":\n    asyncio.run(main())\n\n\nThis example does not use any of Tornado's asynchronous features. For more advanced asynchronous features and real-time applications, explore the [simple chat room demo](https://github.com/tornadoweb/tornado/tree/stable/demos/chat).\n\n## Why Use Tornado\n\nTornado's non-blocking architecture provides significant advantages for specific types of applications. It excels in scenarios requiring high concurrency and persistent connections, offering superior performance for services like real-time dashboards, chat applications, and APIs that leverage long polling or WebSockets. Its lightweight nature and direct control over network operations also appeal to developers seeking fine-grained performance tuning.\n\n## Links\n\n*   Official Documentation: [https://www.tornadoweb.org](https://www.tornadoweb.org)\n*   GitHub Repository: [https://github.com/tornadoweb/tornado](https://github.com/tornadoweb/tornado)","metrics":{"detailViews":1,"githubClicks":1},"dates":{"published":null,"modified":"2026-07-22T23:12:49.000Z"}}