私は非同期 RESTful Web サービスを構築しており、最もスケーラブルで高性能なソリューションは何かを理解しようとしています。当初、私は FriendFeed 構成を使用する予定でした。nginx を実行する 1 台のマシンを使用して静的コンテンツをホストし、ロード バランサーとして機能し、動的コンテンツ用の Tornado Web サーバーを実行する 4 台のマシンへのリバース プロキシとして機能します。クアッドコア マシンで nginx を実行し、シングル コア マシンで各 Tornado サーバーを実行することをお勧めします。アマゾン ウェブ サービス (AWS) は、最も経済的で柔軟なホスティング プロバイダーと思われるので、ここに私の質問があります。
1a.) AWS では、c1.medium (デュアル コア CPU と 1.7 GB メモリ) インスタンス タイプしか見つかりません。これは、c1.medium で 1 つの nginx インスタンスを実行し、m1.small (シングルコア CPU と 1.7 GB メモリ) インスタンスで 2 つの Tornado サーバーを実行する必要があるということですか?
1b.) スケールアップする必要がある場合、これら 3 つのインスタンスを同じ構成内の別の 3 つのインスタンスにチェーンするにはどうすればよいですか?
2a.) S3 バケットで静的コンテンツをホストする方が合理的です。nginx はまだこれらのファイルをホストしていますか?
2b.) そうでない場合、nginx でホストしないとパフォーマンスが低下しますか?
2c.) nginx が静的コンテンツをホストしない場合、実際にはロード バランサーとしてのみ機能します。さまざまなクラウド構成のパフォーマンスを比較した優れた論文がここにあり、ロード バランサーについて次のように述べています。 SSL 処理のオーバーヘッドなしでレイヤー 4 のトラフィックを処理します。」ロードバランサーとして nginx をレイヤー 4 で動作するものに置き換えることをお勧めしますか、それとも Amazon の Elastic Load Balancer は十分に高性能ですか?