Rails アプリを実行するためのシステム要件を計算する方法はありますか? (=月額費用)
主に Heroku か Digital Ocean に興味があります。
Rails アプリを実行するためのシステム要件を計算する方法はありますか? (=月額費用)
主に Heroku か Digital Ocean に興味があります。
私はそれを行うための 2 つの方法を提案します: ここでは単純であまり正確ではない方法: 1. http://httpd.apache.org/docs/2.2/programs/ab.htmlで Apache をダウンロードし ます。 $5 または無料試用版の Digital Ocean ドロップレット。3. このように動的に生成されるページで推定ユーザー数を使用して ab を実行します
ab -n 10 -c 20 http://www.yourdigitaloceanserver.com/hugeerbfromdatabase
ここで、「n」は、「c」人の同時ユーザー (この場合は 20) に対して実行するリクエストの量を表します。次に、テスト結果を取得して、速度に満足しているかどうかを確認します。そうでない場合は、より大きなサーバーが必要です。
アプリケーションのパフォーマンスは、同時実行性、ユニコーンの作業 (または他の Web サーバー) の数、データベース クエリ、キャッシュの有無、redis や memcached の使用など、複数の要因に依存するため、特定のルールはありません (それについての本)。
他の方法はおそらくより正確でしょう。mechanize のようなツールを使用して、サイトでユーザーが行うと予想されることを実行し、応答時間を測定するスレッド化されたアプリケーションを作成します。Digital Ocean インスタンスはオンザフライでスケーリングできるため、トラフィックの増加に合わせて拡張できます。
すぐに使えるアプリがまだない場合は、Ruby on Rails をドロップレットにインストールして、次のように簡単に実行します。
rails new mytestapp
cd mytestapp
rails g scaffold things name
rake db:migrate
rails c
100.times do
Thing.create!(name: "lorem ipsum")
end
exit
rails s
別のシェルまたはコンピューターから実行します。
ab -n 10 -c 20 http://www.yourdigitaloceanserver.com:3000/things
そして、あなたはパフォーマンスについてのアイデアを得ます。puma などの別のサーバーを試すこともできます。頑張ってください。