2011-10-12 9 views
5

高トラフィックレールアプリケーションのホスティングに関する質問があります。私はRuby on Railsアプリケーションで3年4年の経験を持っていますが、以前は交通量の多いウェブサイトを持っていませんでした。私は本当に興奮しています。これは私と私の同僚の「次のレベル」です。私たちは、 "高トラフィック"を処理するためのレールアプリケーションの経験はありません。まず、この場合、 "高トラフィック"を定義しましょう。"高"交通レールアプリケーションのホスティング

私たちは、主要なオランダの通信事業者の1つと、 1日の訪問者数は約400,000人になります。 Ruby 1.9.2とRails 3.1でプログラミングしています。私たちは認証処理にdeviseを使用しています。しかし、我々は、このアプリケーションをホストする信頼できる団体を探しています。私たちはHerokuを見ていますが、私は何が必要か、どのくらいの労働者、dynoや専用データベースが必要かという手掛かりはありません。私たちは映画をストリーミングする必要があり、amazon s3バケットでそれらをホストする予定です。

私は、Herokuやその他の専門的で信頼できるパーティーに関するアドバイスを探しています。レールアプリケーションに関して考慮する必要があるものはありますか?

ありがとうございます!

答えて

9

dynosに関しては、大雑把には簡単に処理できます。

dynoはシングルスレッドなので、ページをレンダリングするのに200msかかると、毎秒5ページをレンダリングできます。 400,000人のユーザーが作成する1秒あたりのページ数を把握する必要があります。次に、1秒間に何ページが要求されているのか、そして単一のdynoで処理できるページ数が分かります。したがって、1秒あたりのユーザー要求を満たすまで、dyno数を増やすだけです。

例えば1つのダイノする@ 200ミリ秒の= 200ミリ秒の= @二 2 dynos秒

あたり10ページ

などなどにつき5ページDBのパフォーマンスなどのような他の要因があるように予定されているように、それは唯一のボールパークの図だが安心してご利用いただけます。ヘロクはこのタイプのシナリオに適しています。

あなたは、あなたのアプリケーションがそれらを使用している場合に対応し、キューを処理するために時間がかかることがあり、サードパーティがありますどこのメールなどを送信する任意の長いランニングイベント、例えばのために労働者を使用する必要があります。

一度20Gb以上のデータベースを使用すると、専用のデータベースを使用する必要があり、月額200ドルの初心者向けデータベースではホスティングコストの面で汗を流さないように思えます。

私は何かお見逃しですか?もし私が私に戻ってきたら、

+0

と1 dynoあなたはウェブまたはワーカーdynoを意味しますか?そして、労働者のdynoは何をしていますか?クリップクリップのアップロードプロセスやrmagick/imagemagick写真の操作として見ることができますか? –

+1

だからちょっと混乱します。以前はdynos(Web用)とworker(バックグラウンドジョブ用)でした。新しいスタック 'Cedar'にはプロセスだけがあります。作業者は、バックグラウンドで実行できるもの、または長い時間がかかる可能性のあるものに使用する必要があります。そうしないと、Webページと同じリクエストでイメージのサイズを変更するようなことは、dyno(またはWebプロセス)がビジー状態の間に他のものを処理できないことを意味します。したがって、来るリクエストはキューに入れられ、30秒以内に応答を受け取らないと最終的にタイムアウトになります。 –

+0

あなたの助けてくれてありがとう!私はセキュリティに関する別の質問があります。私が考える必要があるものはありますか? IDはランダムで予測不可能にする必要がありますか?そして、それをする最善の方法は何ですか? –

関連する問題