Что все это говорит о стойке приложений?

Там много говорят о стеллаж, но если вы сами не являетесь автором фреймворка, вы редко его видите. Так что же такое стойка? И почему, как разработчик приложений, вы должны заботиться об этом?

Основы стойки

Стойка является своего рода промежуточным программным обеспечением. Он находится между вашим веб-приложением и веб-сервером. Он обрабатывает все специфичные для сервера вызовы API, передает HTTP-запрос и все параметры среды в хэше и возвращает ответ вашего приложения на сервер. Другими словами, ваше приложение не должно знать, как общаться с HTTP-сервером, оно должно знать, как общаться с Rack.

Преимущества стойки

Это имеет ряд преимуществ. Во-первых, разговаривать с Rack легко (как вы увидите ниже). Во-вторых, поскольку вам нужно только знать, как общаться с Rack, а Rack знает, как общаться со многими различными HTTP-серверами, ваше приложение будет работать на любом из этих HTTP-серверов. Стойка похожа на универсальный адаптер для веб-приложений.

Сами приложения Rack не представляют собой ничего особенного. На самом деле Rack API настолько прост, что его можно описать одним предложением:

instagram viewer

Приложение Rack - это любой объект Ruby, который отвечает на вызов Метод, принимает один хэш-параметр и возвращает массив, содержащий код состояния ответа, заголовки ответа HTTP и тело ответа в виде массива строк.

Вот и все. Это звучит слишком просто, чтобы быть правдой, или, по крайней мере, слишком просто, чтобы быть полезным, но когда дело доходит до этого, это все, что вы действительно делаете, когда общаетесь с HTTP-серверами.

Почему стойки важны?

Но на реальный вопрос: почему, как программист приложения, вы должны заботиться о Rack? Ну, во-первых, всегда есть понимание в том, как работает ваша структура. Но что еще более важно, есть полезные вещи, которые вы можете сделать с Rack. Самое главное: промежуточное ПО.

Теперь это звучит немного странно. Но дополнительный слой между вашим приложением и Rack может быть хорошей вещью и реализовывать функции, которые только загромождают ваше приложение. Это промежуточное ПО просто принимает запрос от Rack, передает его в ваше приложение, получает его ответ, добавьте что-нибудь к нему или отфильтруйте его или что-то в этом духе и затем передайте ответ обратно Стеллаж. Это может быть использовано для реализации очень интересных небольших функций, таких как независимый от сервера логгер или запрос средство проверки работоспособности или небольшое промежуточное ПО, которое отправляет электронное письмо администратору каждый раз, когда ваше приложение возвращается с 404. Ни одна из этих функций не должна загромождать ваше приложение, они могут быть реализованы как промежуточное ПО с помощью Rack.

instagram story viewer