Кто-нибудь запускает padrino на Rubinius + Puma в производстве? Если да, то насколько он стабилен? Это лучше, чем МРТ + тонкий? Я думаю попробовать, но немного беспокоюсь о его стабильности.
Рубиний + Падрино на производстве?
Ответы (2)
Я использую Puma в продакшене, она хороша для стабильности и дает отличную скорость. Бывают случаи, когда вы должны выбрать Thin (помните, что вы находитесь в цикле событий), а иногда вам следует выбирать Puma. Выбор Thin перемещает параллелизм с уровня кода на уровень ввода-вывода, поэтому Thin хорош для работы с большим количеством соединений в реальном времени или с постоянными соединениями, такими как чат-сервер или приложение реального времени. Что-то, где приложение предназначено для обслуживания разных страниц, вам нужен небольшой объем памяти и хорошее переключение контекста, такие вещи, как предварительное разветвление (например, Unicorn) или работа на Rubinius-версии Ruby с Puma, которая упрощает кодирование параллелизма, потому что она будет хорошо работать с многопоточностью. в отличие от чего-то вроде MRI с глобальной блокировкой интерпретатора. JRuby, например, использует собственные потоки и поэтому будет использовать все доступные процессоры, так что при определенных обстоятельствах это может быть полезно.
См. http://ylan.segal-family.com/blog/2013/05/20/unicorn-vs-puma-redux/.
Я никогда не использовал Падрино, но не понимаю, почему это может быть таким же важным фактором, как ваш код.
Глупо спрашивать, что лучше, потому что только вы можете сказать, хорошо ли что-то и работает ли оно за вас или нет.
Есть определенные факторы, которые вы можете использовать, чтобы определить, подходит вам Rubinius или нет.
Задайте себе эти вопросы:
- Ты вообще знаешь, кто такой Рубиний?
- Почему вы рассматриваете Рубиния?
- Вы сравнивали свое приложение с обеими средами выполнения?
- Что говорят ваши тесты? У вас есть тесты?
Вероятно, есть еще вопросы, но, похоже, вы просто ищете что-то новое, верно? :)
Вы можете присоединиться к #rubinius на freenode, чтобы задать свои вопросы.