Клиент-серверное взаимодействие HTTP. REST. JSON. SOAP
Клиент-серверное взаимодействие В настоящее время глобальное информационное пространство представлено множеством веб-приложений. Как правило, в их основу положена трехуровневая архитектура клиент-серверного взаимодействия, предполагающая разделение обработки на три логически различимых сегмента. Рассмотрим три ключевых компонента архитектурной модели с целью отражения их функциональности и организации взаимодействия. 1. Представление. Это интерфейсный (обычно графический) компонент комплекса, предоставляемый конечному пользователю. Этот уровень не должен иметь прямых связей с базой данных (по требованиям безопасности и масштабируемости), быть нагруженным основной бизнес-логикой (по требованиям масштабируемости) и хранить состояние приложения (по требованиям надёжности). На этот уровень обычно выносится только простейшая бизнес-логика: интерфейс авторизации, алгоритмы шифрования, проверка вводимых значений на допустимость и соответствие формату, несложные операции с данными (сортировка, группировка, подсчёт значений), уже загруженными на терминал. 2. Веб-сервер, обеспечивающий обработку запросов клиентов и формирование ответов на основе исполнения сценариев и запросов к серверным базам данных или иным структурированным или неструктурированным источникам. 3. Хранение данных. Службы хранения данных обеспечиваются различными структурированными и неструктурированными информационными хранилищами, вспомогательными инструментами, которые обеспечивают доступ к необходимым данным из различных областей приложения Существует широкий выбор компонентов и технологий, которые могут быть частью архитектуры веб-приложений. В результате построение архитектурной модели сводится к выбору основных функциональных компонентов системы, архитектурных решений на каждом из уровней проектируемого веб-приложения, где центральное место занимают процессы интерпретации. Клиент-серверное взаимодействие Статическое веб-приложение предполагает применение следующей схемы клиент-серверного взаимодействия. Взаимодействие клиент-серверных веб-систем начинается с инициализации соединения и отправки URL-запроса. В случае если клиентский запрос принимается на определенную статическую страницу, то серверное приложение, самостоятельно обслужив запрос, отправляет HTML-содержимое запрашиваемой страницы. Динамическое веб-приложение реализует следующую модель поведения. Клиентская сторона обращается к серверному сценарию, который, получив соответствующий запрос, выполняет предусмотренные действия для динамического формирования страницы. Серверные сценарии по мере необходимости выполняют выборку данных из соответствующего источника и представляют динамически сгенерированное содержание клиенту.