サーバーと Web フレームワークがあります。いつフレームワークを使用する必要があり、いつ他のフレームワークに置き換えることができますか?
この区別は少しあいまいです。静的ページのみを提供する場合は、lighthttpd などの高速サーバーの 1 つを使用します。それ以外の場合、ほとんどのサーバーは、Web アプリケーションを開発するためのさまざまな複雑さのフレームワークを提供します。Tornado は優れた Web フレームワークです。Twisted はさらに優れた機能を備えており、優れたネットワーク フレームワークと見なされています。多くのプロトコルをサポートしています。
Tornado と Twisted は、ノンブロッキングで非同期の Web/ネットワーキング アプリケーション開発をサポートするフレームワークです。
トルネードはいつ使用する必要がありますか? 役に立たない時は?それを使用するとき、何を考慮に入れるべきですか?
その性質上、非同期 / ノンブロッキング I/O は、I/O 集中型で計算集中型でない場合に最適に機能します。ほとんどの Web / ネットワーク アプリケーションは、このモデルに適しています。アプリケーションが特定の計算集約的なタスクを実行する必要がある場合は、それをより適切に処理できる他のサービスに委任する必要があります。Tornado / Twisted は Web サーバーの役割を果たし、Web リクエストに応答します。
Tornado を使用して非効率なサイトを作成するにはどうすればよいですか?
- 計算集約的なタスクを実行する
- ブロッキング操作を導入する
しかし、これは特効薬ではないと思います。Django ベースのサイトやその他のサイトをやみくもに Tornado で実行しても、パフォーマンスが向上することはありません。
パフォーマンスは通常、完全な Web アプリケーション アーキテクチャの特性です。アプリケーションが適切に設計されていない場合、ほとんどの Web フレームワークでパフォーマンスが低下する可能性があります。キャッシング、負荷分散などについて考えてください。
Tornado と Twisted は妥当なパフォーマンスを提供し、パフォーマンスの高い Web アプリケーションの構築に適しています。ツイストとトルネードの両方の証言をチェックして、それらが何ができるかを確認できます.