Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > Несколько вопросов по RoR


Автор: redhotberry 14.3.2010, 21:09
Здравствуйте. Занимаюсь созданием сайтов на РНР. Использую в основном Symfony и Yii в зависимости от задач. Захотелось ускорить разработку за счет перехода на более удобный язык и в результате выбор между Ruby и Python упал на первый, в связи с более удобной и правильной на мой взгляд моделью ООП, а также благодаря замыканиям.
Я посмотрел сравнения и тесты языков и увидел, что Ruby 1.8 проигрывает в производительности Python очень сильно, но 1.9 - настолько же сильно выигрывает. Обрадовавшись, пошел ставить Ruby on Rails и тут же снова разочаровался - текущая, стабильная версия фреймворка не поддерживает Ruby 1.9. 

И так, у меня возникли вопросы:

Когда выйдет RoR 3?
Какие существуют способы ускорения RoR на 1.8 версии языка?
Чувствуется ли разница в скорости между РНР и Ruby для небольших сайтов? (вопрос, скорее, риторический)


Автор: Vasay 15.3.2010, 11:37
Цитата

Какие существуют способы ускорения RoR на 1.8 версии языка?


Использовать http://jruby.org/ 

Автор: source777 15.3.2010, 13:50
Цитата(redhotberry @  14.3.2010,  21:09 Найти цитируемый пост)
Когда выйдет RoR 3?

Классный вопрос, думаю он многих уже не первый год волнует.  smile 
Если серьёзно, то RoR 3.0.0.beta уже вышла месяц назад. Сейчас идёт заключительный этап - стабилизация. Есть мнения, что релиз будет приурочен к RailsConf, т.е. состоится в конце мая - начале июня.
Правда я слабо представляю как человек без опыта работы с Ruby в целом и RoR 2.x в частности может начать сразу с RoR 3. По этой версии пока просто недостаточно документации для начинающих.

Далее, RoR 2.3.5 поддерживает Ruby 1.9.1, есть пара косячков с non-ASCII кодировками, но на них есть хорошо известные воркэраунды. Другое дело, что сама ветка Ruby 1.9.x пока не очень стабильна, поэтому пока не выйдет 1.9.2 рекомендуемой версией для RoR(даже для 3.0) останется 1.8.7. В качестве примера совместимости крупного приложения на RoR 2.3.5, совместимого с Ruby 1.9.1 можешь посмотреть на http://spreecommerce.com/blog/2010/03/13/spree-0100-released/, не забудь RubyGems обновить до версии 1.3.6 перед установкой.



Цитата(redhotberry @  14.3.2010,  21:09 Найти цитируемый пост)
Какие существуют способы ускорения RoR на 1.8 версии языка?

Посмотри замечательную серию скринкастов про масштабирование Rails приложений - http://railslab.newrelic.com/scaling-rails.


Цитата(redhotberry @  14.3.2010,  21:09 Найти цитируемый пост)
Чувствуется ли разница в скорости между РНР и Ruby для небольших сайтов?

Для небольших сайтов время генерации страницы на стороне сервера у меня составляет от 50 до 300 мс на обычном шаред-хостинге, вот, например, npobit.com(небольшой мульти-язычный сайт) можешь посмотреть. Впрочем на визуальном восприятии скорости загрузки страниц никакой разницы разумеется нет.
А вот гугл мне выдал сайт похожей тематики на PHP: medton.org, по визуальным ощущениям он грузится раз в 5, а то и в 10 медленнее. 
Вывод: синтетические тесты(в которых PHP оказывается побыстрее, чем Ruby) не имеют никакого значения в реальных условиях.
Да и вообще для таких сайтов не так важно, что там на серверной части, клиентскую часть оптимизировать надо, чтобы быстрее грузилась и рендерилась.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)