Ruby On Rails был краеугольным камнем в веб-разработке с момента своего основания, позволяя разработчикам создавать масштабируемые и поддерживаемые веб-приложения. С эволюцией Rails каждая версия вводила новые функции, улучшения производительности и безопасности. Поскольку Rails имеет открытый исходный код, разработчики постоянно решали существующие проблемы и добавляли улучшения, поддерживая фреймворк в соответствии с новыми трендами. Итак, давайте рассмотрим путь Rails как фреймворка от зарождения до последних достижений.
Рубрика «ruby on rails 4»
Rails сквозь года: Ключевые изменения от версии 1 к версии 8
2025-01-05 в 10:15, admin, рубрики: ruby, ruby on rails, ruby on rails 2.1, ruby on rails 3, ruby on rails 4, ruby on rails 7OpenShift v3. Часть II. Продолжение знакомства. ROR4
2016-10-12 в 17:25, admin, рубрики: openshift, paas, ruby on rails 4, Облачные вычисленияВ предыдущей части рассмотрен сам продукт, а также простенький пример работы с PaaS реализацией. Пойдем дальше. Поставим Ruby-on-Rail 4 с PostgreSQL. В процессе познакомимся:
1. С встроенными граблями.
2. Схемой разработки, она отличается от таковой у v2.
3. Некоторыми командами консольного клиента.
Читать полностью »
Самый простой deploy приложения на Ruby on Rails
2014-12-16 в 16:28, admin, рубрики: capistrano, capistrano 3, deploy, deployment, nginx, ruby, ruby on rails, ruby on rails 4, unicorn, Веб-разработка, Настройка Linux
Полгода назад я написал пост Deploy приложения на RoR 4 с помощью Capistrano 3. Прошло время, я получил много положительных отзывов, но были и отрицательные. Из них можно было понять следующее:
- Инструкция слишком сложная для новичка
- Очень много всего приходится делать «руками»
Я подумал и написал gem 'capistrano3-ubuntu-server-config', который полностью настраивает Ваш «чистый» Ubuntu сервер. Всё, что Вам нужно сделать руками — создать нового пользователя и дать ему права visudo (причем давать ему права на passwordless sudo ему не надо). Он может:
- Настроить SSH (Добавить настройки 'PermitRootLogin no', 'UseDNS no', 'AllowUsers username')
- Создать и настроить swap (размер запрашивается)
- Сделать
sudo apt-get update
и
sudo apt-get upgrade
- Установить из исходников и настроить как чистый Nginx, так и с модулем Pagespeed
- Установить PostgreSQL из репозитория, затем создать суперпользователя БД (имя пользователя и пароль запрашиваются)
- Установить из исходников и настроить Redis
- Установить RVM с последней версией Ruby и gem'ами Rails, Bundler
- Скопировать Ваш приватный ssh ключ (например для доступа к приватному git репозиторию) с локальной машины на сервер и добавить его в ~/.ssh/config
- Установить imagemagick из репозитория (Необходим для Paperclip, постоянно его забываю ставить)
- Установить любые дополнительные пакеты из репозитория (Запрашивает какие именно)
Можно запустить конфигурационный wizard, который узнает, что именно из вышеперечисленного необходимо сделать и заранее спросит все настройки, чтобы можно было потом пойти попить кофе, а можно запустить отдельные таски. Данный gem будет полезен не только Rails разработчикам, а всем, кто использует Capistrano для деплоя.
Эта статья раскроет следующие темы:
- Использование gem'a capistrano3-ubuntu-server-config
- Использование gem'а capistrano3-git-push
- Моя текущая миниатюрная конфигурация Capistrano
Рубин на рельсах: продакшен и деплой для чайников
2014-10-13 в 14:33, admin, рубрики: capistrano, ruby on rails, ruby on rails 4, rvmГод назад я довел свое первое рельсовое приложение до приемлемого вида. Вопрос использования готового кода в продакшене ранее меня не заинтересовал. С чего вдруг? Несложный язык, лаконичный фреймворк — уж деплой-то явно не сложнее, чем преодоление ментального тормоза после PHP.
Команда разработчиков Rails рекомендует использовать Phusion Passenger, он что-то вроде mod_php — установил, разместил файлы и полетел. На момент изучения вопроса на форумах хватало баталий о производительности решений; Passenger в них фаворитом не значился.
Совета относительно альтернативы я спросил у техдиректора сайта с миллионом уников в сутки — тот отправил меня гуглить на тему Nginx и Unicorn. Инструкция по настройке продакшена, найденная на Хабре, датировалась 2009 годом. Помимо прочего, ее просто переполняли изъяны уроков «Как нарисовать сову».
Отдельные составляющие процесса кое-где разжеваны по-английский, но монолитный tutorial на глаза так и не попался. В традициях рельсового сообщества лежит принцип, предписывающий делиться результатами и опытом решения проблем.
Читать полностью »
Развертываем свой сайт на Heroku
2014-08-08 в 8:12, admin, рубрики: heroku, mysql, ruby on rails, ruby on rails 4, tutorial, Веб-разработкаЗдравствуй! Недавно у меня возникла необходимость развернуть свое Rails web-приложение на Heroku и я, к своему удивлению, не нашел почти ничего об этом на просторах не только Хабра, но и рунета в целом, поэтому я решил поделиться с вами своим опытом. Подробности о том, что и как я делал находятся под катом!
Как мы увеличили скорость генерации JSON в 6000 раз
2014-06-18 в 22:34, admin, рубрики: json, performance optimization, ruby, ruby on rails, ruby on rails 4, Блог компании Staply, метки: json, performance optimization, ruby on rails 4Краткий обзор способов формирования JSON
На сегодняшний день в Rails имеются следующие способы сериализации объектов в JSON:
- Вызов to_json() напрямую.
- RABL
- Active model serializers
- JBuilder
Тонкости Rails 4 — Thread-Safety
2013-03-10 в 16:11, admin, рубрики: ruby, ruby on rails, ruby on rails 3, ruby on rails 4, threads, Веб-разработка, многобуков, многопоточность, потоки
В Rails 4.0 по умолчанию будет включена опция config.threadsafe! и в данном уроке вы узнаете о том, что же она все-таки делает, как влияет на production и как вообще стоит вести себя с потоками.
Читать полностью »
Что нового в Rails 4
2013-02-23 в 17:51, admin, рубрики: engine yard, rails 4, ruby on rails, ruby on rails 4, Блог компании Engine Yard, Веб-разработка, метки: engine yard, rails 4, ruby on rails 4 Четвёртая версия фреймворка Ruby on Rails уже не за горами. Хотя официальной даты релиза еще нет, многие ожидают release candidate уже в начале этого года.
Эта версия фреймворка разрабатывается уже год и представляет из себя множество изменений во внутренней архитектуре. Фреймворк эволюционировал и прибрёл более модульный формат, большинство из нововведений раскидано по отдельным джэмам, для того, чтобы основной код оставался чистым. Таким образом, устаревший функционал можно официально не поддерживать, но использовать, если такая необходимость возникнет.
Во время написания этих строк Engine Yard пока что официально не поддерживает Rails 4 в наших облачных продуктах. Однако, если вы хотите таки их опробовать, вы, конечно, же сможете. Однако будьте внимательны — некоторые возможности, особенно live streaming, скорее всего не будут работать.
Если вы столкнётесь со сложностями при попытке развёртывания приложений на Rails 4, то их нужно регистрировать как feature requests, а не как баг, так как мы ещё не закончили интегрирование Rails 4 в наши продукты.
Читать полностью »
Тонкости Rails 4 — Turbolinks
2013-01-27 в 17:58, admin, рубрики: ajax, javascript, ruby, ruby on rails, ruby on rails 3, ruby on rails 4, turbolinks, оптимизация, оптимизация сайта
Гем под названием Turbolinks способен неплохо ускорить ваше приложение, используя JavaScript для обновления контента на странице. Он включен по умолчанию в Rails 4, но я покажу, как можно использовать его уже сейчас в программах, написанных на Rails 3. Также вы узнаете о некоторых подводных камнях.
Читать полностью »
Тонкости Rails 4 — Cache Digests
2013-01-14 в 17:29, admin, рубрики: cache digests, caching, railscast, ruby, ruby on rails, ruby on rails 3, ruby on rails 4, Клиентская оптимизация, кэширование
Гем под названием "cache_digests" (включен по умолчанию в Rails 4) автоматически добавляет цифровую подпись к каждому фрагментному кэшу, основываюсь на представлении (вьюхе). При этом, если страница изменяется, то старый кэш автоматически удаляется. Но остерегайтесь подводных камней!
Читать полностью »