Tornado (Webサーバ)
表示
|
| |
| 作者 | FriendFeed |
|---|---|
| 開発元 | Facebook, Bret Taylor |
| 初版 | 2009 |
| 最新版 | |
| リポジトリ | |
| プログラミング 言語 | Python |
| 対応OS | Cross-platform |
| 対応言語 | English |
| サポート状況 | Active |
| 種別 | Webサーバ |
| ライセンス | Apache_License 2.0 |
| 公式サイト |
www |
TornadoはPythonで書かれたスケーラブルでノンブロッキングなWebサーバ、Webフレームワークである。FriendFeedによって開発され、Facebookに吸収されたのちにオープンソース化された。
パフォーマンス
[編集]Tornadoで特筆すべきはそのパフォーマンスである。C10K問題の解決に挑み、他のサーバにも影響を与えた。下記の表はTornadoと他のPythonサーバを比べたベンチマークである:
| サーバ | セットアップ | 秒間のリクエスト数 |
|---|---|---|
| Tornado | nginx, four frontends | 8213 |
| Tornado | One single-threaded frontend | 3353 |
| Django | Apache/mod_wsgi | 2223 |
| web.py | Apache/mod_wsgi | 2066 |
| CherryPy | Standalone | 785 |
サンプル
[編集]以下のサンプルコードは、http://localhost:8888にアクセスすると"Hello, world"を表示するサンプルである。
import tornado.ioloop
import tornado.web
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, world")
application = tornado.web.Application([
(r"/", MainHandler),
])
if __name__ == "__main__":
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()
モジュール
[編集]出典
[編集]- ↑ “Release 6.5.5”. 10 March 2026. 2026年4月4日閲覧.
- ↑ “Tornado: Facebook's Real-Time Web Framework for Python”. Facebook. 2009年9月10日閲覧。