はじめに

Tornado は Python Web フレームワークと非同期ネットワーキングライブラリで、もともと FriendFeed で開発されました。非ブロッキングネットワーク I/O を使用することにより、Tornado は数万ものオープン接続を処理でき、ロングポーリングWebSocket、その他の各ユーザーとの長時間の接続を必要とするアプリケーションに最適なものとなっています。

Tornado は大まかに 3 つの主要なコンポーネントに分類できます。

  • Web フレームワーク(Web アプリケーションを作成するためのサブクラス化された RequestHandler と、さまざまなサポートクラスを含みます)。

  • HTTP のクライアントおよびサーバー側のインプリメンテーション(HTTPServerAsyncHTTPClient)。

  • HTTP コンポーネントのビルディングブロックとして機能し、他のプロトコルを実装するために使用できる、IOLoopIOStream クラスを含む非同期ネットワーキングライブラリ。

Tornado Web フレームワークと HTTP サーバーは、WSGI のフルスタックの代替手段を提供します。Tornado HTTP サーバーを他の WSGI フレームワークのコンテナーとして使用することは可能ですが(WSGIContainer)、この組み合わせには制限があり、Tornado を完全に活用するには、Tornado の Web フレームワークと HTTP サーバーを一緒に使用する必要があります。