[КНИГА + ВИДЕО + ИНТЕРВЮ ($199 пакет)] Узнайте, как превратить ваше приложение Rails со скоростью улитки в реактор с частотой менее 100 миллисекунд. Полное руководство по производительности Rails - это полный курс, который дает вам инструменты, позволяющие сделать приложения Ruby on Rails более быстрыми, масштабируемыми и простыми в обслуживании.
Производительность это сложно.
ПОЧЕМУ САМЫЕ ПРОИЗВОДСТВЕННЫЕ RAILS ПРИЛОЖЕННИЯ МЕДЛЕННЫЕ?
Они так не начинали. Ваше приложение началось как скудный, подлый веб-компьютер.
КОГДА СТРАНИЦЫ НАЧИНАЮТ ЗАГРУЖАТСЯ ПО 5 СЕКУНД?
Поиски сваливаются, ваши кеши лопаются по швам, а вашему серверу постоянно не хватает памяти. 5 секунд - это жизнь.
Где что-то пошло не так?
Hacker News говорит, что это потому, что Ruby смертельно несовершенен. Это медленный язык, обреченный на провал в стране Го, Javascript, Erlang и других. Это чепуха!
Посмотрите на Shopify, Github и Basecamp. Все они являются приложениями Rails и одними из самых популярных сайтов в мире. Как эти Rails-приложения достигают времени отклика менее 100 миллисекунд в широком масштабе (смею сказать, Web ™)?
ПОЧЕМУ ЭТО ТАК ТРУДНО?
Секрет в том, что Rails-приложения не являются медленными по умолчанию - они умирают медленной смертью на тысячу бумажек. Этот курс о каждой из этих тысяч бумажных вырезок.
Но у вас нет команды из 30 или более опытных программистов, таких как Shopify, Github и Basecamp. И давайте будем реальными - вы не DHH. Возможно, вы начинающий технический директор, у которого есть бизнес, и вы не можете тратить сотни часов на поиск ошибок в производительности.
Почти каждое приложение Rails страдает от одних и тех же проблем с производительностью. Этот курс покажет вам методы, которые дадут вам ускорение веб-сайта, который требуют ваши клиенты.
ЗНАКОМЬТЕСЬ:
ПОЛНОЕ РУКОВОДСТВО ПО ЭФФЕКТИВНОСТИ RAILS
Меня зовут Нэйт Беркопек. Я разработчик Rails и фанат скорости.
За последние 4 года я видел десятки различных кодовых баз Rails. Многие были для хорошо финансируемых стартапов, из инкубаторов Ivy-League, таких как YCombinator или 500Startups. Другие были страстными проектами разработчиков, которые хотели начать побочный бизнес.
Но я никогда не встречал приложения на Rails, которое не смог бы сделать быстрее.
ЧТО ТАКОЕ БЫСТРО?
Вот цифры.
Среднее время ответа сервера приложений
- <50 мс - быстро!
- <300 мс - среднее
- > = 300 мс - Медленно!
Эти числа являются стандартными для приложений Rails, которые обслуживают HTML - ваше типичное приложение в стиле Basecamp. Для простых серверов API, которые обслуживают только JSON, я делю на 2.
И для внешнего интерфейса вот что я ожидал увидеть:
Состояние загрузки браузера
- <500 мс - Быстро!
- <2 секунды - Среднее
- > 2 секунды - медленно!
Это те цифры, которые я ожидал увидеть в Google Analytics Site Speed Tool или в аналитике браузера New Relic. Это не то время загрузки, которое я ожидал бы при проверке загрузки вашего сайта в локальном браузере - у большинства людей машины и интернет-соединения работают медленнее, чем у среднего разработчика!
Если вы находитесь в «БЫСТРОМ» регионе этих чисел, ну, поздравляю - этот курс вам не поможет. Но если вы в группе «СРЕДНИЙ» - «ПЛОХОЙ», тогда я могу помочь.
Производительность трудна. ПОЗВОЛЬТЕ МНЕ ПОМОЧЬ ВАМ.
Производительность не легкая. Предоставление HTML-ответа браузеру на самом деле включает в себя сотни технологий и уровней стека. Создание быстрого веб-сайта немного похоже на создание карточного дома - проблема в любой части стопки может привести к ее разрушению.
Любой из этих уровней или стеков может пойти не так, что приведет к замедлению работы вашего приложения:
ВНЕШНИЙ ИНТЕРФЕЙС
HTML, CSS и JavaScript, причуды рендеринга и предварительные загрузчики браузера.
СЕТЬ
SSL / TLS, HTTP, HTTP / 2, TCP, WebSockets.
РУБИ
Rails, многочисленные гемы, которые вы используете в своем приложении, и время выполнения.
SERVER
Знаете ли вы, как ваш распределитель памяти может повлиять на вашу производительность?
Оптимизация производительности в веб-приложении с полным стеком подобна поиску черного кота в угольном погребе - любая из тысячи вещей может стать узким местом для вашего приложения. Где ты вообще начинаешь?
Хуже того, ни один разработчик полного стека, который пишет код для жизни, не может одновременно быть в курсе всех этих разработок. Мое руководство по оптимизации приложений на Rails охватывает весь стек.
Разве не было бы удивительно, если бы вы могли заглянуть через плечо опытного разработчика Rails с полным стеком и посмотреть, как они диагностируют и решают проблемы производительности одного из самых популярных приложений Rails в мире?
СМОТРИТЕ, ЧТОБЫ ОПТИМИЗИРОВАТЬ RAILS ПРИЛОЖЕНИЯ И ПРИМЕНИТЬ УРОКИ НА ВАШЕМ СОБСТВЕННОМ САЙТЕ.
Я создал исчерпывающий контрольный список для ускорения приложений Rails:
- Реализовано 34 стратегии, которые были протестированы более чем 1 миллионом уникальных посетителей.
- Определены 4 стратегии, которые учитывают наибольшее влияние на производительность. Эти стратегии решили 80% проблем производительности в большинстве приложений.
- Использовали более 20 различных SaaS-провайдеров, Rubygems, ориентированные на производительность, бэкэнд-провайдеров и тд., И нашли идеальный технический стек для упрощения всего процесса оптимизации производительности (даже если вы новый разработчик или кто-то с глубоким техническим опытом).
Эти стратегии были проверены на сайтах моих клиентов и других.
При подготовке этого курса я реализовывал каждую из своих стратегий повышения производительности на производственных веб-сайтах, таких как rubygems.org, sidekiq.org, официальный веб-сайт Ruby и тд.
Через скринкасты и видеоуроки вы сможете посмотреть, как (и что более важно, почему) я оптимизировал эти реальные производственные веб-сайты.
Производственные веб-сайты будут служить вашим примером и руководством по каждой из стратегий в этом руководстве.
Это возможность объединить программу с опытным разработчиком Rails и работать над масштабным приложением.
ЧТО ЭТОТ КУРС ОБУЧАЕТ?
Все Полное руководство по производительности Rails - все стратегии, контрольные списки и скринкасты - разбиты на четыре модуля, чтобы вы не были перегружены. Вы легко и методично повысите производительность своего приложения Rails.
ПРОФИЛИРОВАНИЕ И СРАВНЕНИЕ
Узнайте, как определить, какие области вызывают узкие места. Не тратьте время на «распыление и молитву», оптимизируя все на своем сайте. Узнайте, как определить, на какие области приходится 80% замедления.
ВНЕШНИЙ ИНТЕРФЕЙС
Я рассмотрю все проблемы с производительностью, с которыми вы можете столкнуться в JavaScript, HTML и CSS. Кроме того, я подробно остановлюсь на HTTP и на том, как работает браузер, чтобы вы могли сократить время загрузки веб-интерфейса более чем на 80%.
BACKEND
Мы обсудим все в мире Ruby и Rails, которое может замедлить работу вашего приложения. Какие драгоценные камни использовать, чего следует избегать, и как писать Ruby так быстро. Вы узнаете о том, как работает Rails, избегая распространенных ошибок, которые замедляют работу приложений Rails.
СРЕДА
Это действительно полная книга - я расскажу о доставке активов, CDN, DNS, серверном оборудовании и многом другом.
Основное руководство
375 страниц в форматах PDF, HTML, E-READER (EPUB / MOBI) и JSON
Доступно практически во всех возможных форматах, вы можете прочитать Полное руководство на любом устройстве, которое вы хотите. Программное обеспечение MOOC не требуется - Полное руководство распространяется в виде простого файла .zip!
ПОСЛЕДУЮЩИЙ КОНТРОЛЬНЫЙ ПЕРЕЧЕНЬ
В Полное руководство включен список из более чем 100 элементов действий, позволяющих сделать приложение Rails максимально быстрым.
Скринкасты и Лаборатории
СКРИНКАСТЫ: НЕ ТОЛЬКО ПЕРЕПОЛНЕНИЕ УРОКОВ - 5+ ЧАСОВ ВСЕГО НОВОГО МАТЕРИАЛА
В полный пакет включены более 5 часов экранных передач, где вы увидите, как я реализую включенные стратегии на реальных, производственных сайтах.
LABS: УЧИТЬСЯ, ДЕЛАЯ
Многие уроки в полном руководстве также содержат практические упражнения, в которых вы будете практиковать реализацию стратегий, изложенных в руководстве.
It looks like the link for the Book 1 is broken