Получение низких запросов rails mongrel в секунду (8-15 в секунду)

#ruby-on-rails #ruby #rubygems #mongrel #load-testing

#ruby-on-rails #ruby #rubygems #mongrel #нагрузочное тестирование

Вопрос:

Итак, я опробовал это на нескольких компьютерах с несколькими настройками (серверы / приложения), и я, кажется, постоянно получаю Rails, выполняющий 8-15 запросов в секунду, даже для выполнения выборок в пустых таблицах с 1 полем. Я думаю, что здесь я делаю что-то не так, потому что я прочитал много статистики в Интернете, где люди получают 60-200 с mongrel. Так что падение на 8 кажется просто ужасным. Первое приложение, в котором я тестировал это, было немного сложнее и содержало 2 запроса в 1 контроллере, но они просто выбирали несколько строк, ничего особенного.

Есть ли в этом какой-то трюк, который я не понимаю? Ruby.exe занимает почти 50% моих циклов процессора, но все равно это довольно плохо. Мне кажется, что я пробовал это, когда возился с rails в прошлом году, и получал что-то вроде 50 запросов в секунду. Возможно ли, что маршрутизация каким-то образом испорчена?

Любой совет был бы высоко оценен. Даже информация об инструментах профилирования доступна, чтобы я мог хотя бы выяснить, ГДЕ возникает проблема.

Заранее благодарю.

Ответ №1:

Если вы используете Windows, то это кажется правильным. Rails работает ужасно медленно в Windows. Попробуйте запустить его на Linux или Mac, если он у вас есть. Вы также могли бы попробовать heroku. У них есть бесплатный стартовый план, который вы можете использовать для разработки.

Если вам необходимо работать в среде Windows, вы могли бы попробовать jruby для некоторой дополнительной скорости.

Комментарии:

1. Привет, Сет, огромное спасибо за ответ. Я был в полном замешательстве, пока не увидел это. В Linux это было около 20-30 в секунду против 8 или около того. Я немного почистил свои запросы и получил 45 в секунду. Тем не менее, это было всего 1 соединение, но да. Спасибо за это, позволяет мне сохранять здравомыслие.

2. Без проблем. Я был в похожей ситуации и пытался оптимизировать все в течение недели, пока не понял, что виновата Windows.