0

Railsアプリケーションのバランスをとる方法を誰かが説明できるかどうか疑問に思いました。

2つの質問:

  1. 同じ専用サーバー内の同じデータベースから別々のRailsアプリケーションを読み取ることも役立ちますか?

  2. Apacheがいくつかの追加モジュールをインストールして負荷を分散できることを理解していますか?私は正しいですか?どうすればこれを達成できますか?(ダミーの説明をお願いします)

4

1 に答える 1

1

Passengerの使用を検討します。これは、Mongrelに大きく取って代わり、複数のRailsインスタンスの実行を処理します。

Railsはシングルスレッドであるため、Mongrelを使用してデプロイする場合、mod_proxyがインストールされたApacheが前面にあるクラスターで複数のMongrelインスタンスを実行するのが「通常」です。これにより、Apacheはアプリケーションインスタンスを解放するために複数のリクエストをディスパッチできます。

妥当なデータベースは、高レベルの同時リクエスト用に設計されているため、多数のアプリケーションインスタンスを処理できる必要があります。

サーバーリソースによっては、複数のMongrelインスタンスを実行することで大きなメリットがあります。これは、実際には同時リクエストを処理する唯一の方法です。

小さなメモリのホスト(たとえば512mb)でも、Railsアプリが100mbのメモリを使用する場合、リソースを使い果たすことなく複数のインスタンスを簡単に実行できます。そうすれば、インスタンスと同じ数の同時リクエストを処理できます。

Sliecehostには、次のようなすばらしい記事がいくつかあります。http: //articles.slicehost.com/2009/4/17/centos-apache-rails-and-mongrels

于 2010-06-08T03:40:52.373 に答える