Rails 3.0.5 を実行しており、コンソールに 60 ミリ秒かかると報告されたページが表示されますが、Firefox のネット ロード タイム チャートを確認すると、2.9 秒かかります。ab
Bash でコマンドを実行すると、300 ミリ秒かかると表示されます。
したがって、スタンドの JavaScript (6 つ) を削除すると、1.9 秒かかります... しかし、なぜそんなに遅いのだろうか? キープアライブは尊重されませんか?
また、Firefox が 4 つのファイルを同時にダウンロードしていることを示しているのも奇妙です。Webrick は一度に 1 つの接続しかサポートしていないと思いましたか?
(mongrel または "thin" を使用するように変更すると、状況が変わったり、より良くなったりしますか?)
また奇妙なのは、もし私が
ab -n 10 -c 5 http://www.somesite.com:8080
3 秒かかります。どのようkeep-alive
にサポートされているかをテストするために、次の-k
オプションを使用しました。
ab -n 10 -c 5 -k http://www.somesite.com:8080
合計時間が 3 秒から 4.5 秒に変わりました。keep-alive
高速化することは想定されていませんがkeep-alive
、Webrick でサポートされていますか?
また、同時接続をサポートしている場合、一部のコードがクラス変数を使用して物事を処理すると、競合状態が発生することはありませんか? (クラス変数のコンテンツはリクエスト間で保持されるため)