Я использую Rails 3.0.5, и на консоли сообщается, что страница занимает 60 мс, но если я проверю график времени загрузки Firefox Net, это займет 2,9 секунды. Если я запускаю команду ab
в Bash, она говорит, что это занимает 300 мс.
Так вот если убрать стоячие javascripts (их 6), то это занимает 1,9 секунды... но интересно почему так медленно? Разве Keep-alive не соблюдается?
Также странно, что Firefox показывает, что 4 файла загружаются одновременно - я думал, что Webrick поддерживает только одно соединение за раз?
(Изменит ли ситуацию или улучшит ли ее переход на использование 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?
Кроме того, если он поддерживает параллельное соединение, то если какой-то код использует переменную класса для обработки вещей, то не может ли возникнуть состояние гонки? (поскольку содержимое переменной класса остается между запросами)