私は自分のレールアプリケーション用にApache + Haproxy + Mongrelセットアップを持っています。私が特定のサーバーページにヒットしたとき、mongrelは要求を処理するのに約100msかかってしまい、私の遅いホーム接続のデータ送信時間のために約5秒でページを取得します。低速クライアント接続ブロックMongrel
この5秒間のデータ転送中、mongrelは他のリクエストを処理していないことがわかりました。私はmongrelがクライアントに応答htmlを提供しており、クライアントがそれを受け取るまでブロックされているという意味で驚いています。応答をApacheの仕事にしてはいけませんか?
これは、クライアント接続の速度に応じてMongrelが提供できるリクエストに深刻なボトルネックをもたらします。 mongrelによって生成されたhtmlがapache/haproxyやnginxのような他のウェブサーバーによって提供される方法はありますか?
他のトラフィックの多いサイトではどのように管理しているのだろうか?
「レールは一度に1つのプロセスしか処理できません」と理解しているかどうかはわかりません。私は雑種の1つのインスタンスが1つのレールの要求にしか役立たないことを知っています。したがって、5つの要求を同時に処理するには、5つの雑多なインスタンスを実行する必要があります。乗客の場合と同じで、スレッド数を増やします。 – Sanjay
"レールは一度に1つのリクエストしか処理できません" – deepak