Методика Традиции и инновации в образовательном пространств | Page 26

Рис. 1. Схема многозвенной архитектуры
Клиентское приложение – это интерфейсный компонент, который представляет последний уровень, предназначенный для конечного пользователя. Клиентское приложение не имеет прямых связей с базой данных( по требованиям безопасности) и не нагружен бизнес-логикой( по требованиям масштабируемости) [ 3 ].
Преимущества многозвенной архитектуры: увеличение производительности( так как бизнес-логика выполняется не на клиентском компьютере), легкая масштабируемость программного продукта, отказоустойчивость при высоких нагрузках.
Примером таких систем в среде интерактивного обучения может являться продукт « Lingualeo » – образовательная платформа для изучения и практики иностранного языка. Клиентским приложением у продукта является прежде всего браузер, а также приложения для мобильных платформ.
Многозвенным приложением может являться и веб сервис, так как клиентом является веб браузер, сервером приложений может являться сервлет( рис. 2) контейнера JavaEE, а вместо сервера баз данных может быть файловое хранилище, к которому обращается сервлет.
Рис. 2. Пример простейшего сервлета
Рассмотрим основные функции клиента и сервера приложений. Функции приложения-клиента [ 1 ]: 1. Посылка запросов серверу. 2. Интерпретация результатов запросов, полученных от сервера. 3. Представление результатов пользователю в некоторой форме( интерфейс пользователя). Функции серверной части [ 1 ]: 1. Прием запросов от приложений-клиентов. 2. Интерпретация запросов. 3. Оптимизация и выполнение запросов к БД. 4. Отправка результатов приложению-клиенту. 5. Обеспечение системы безопасности и разграничение доступа. 6. Управление целостностью БД. 7. Реализация стабильности многопользовательского режима работы. Классическое взаимодействие между клиентом и сервером осуществляется через протокол TCP / IP, а именно с помощью сокетов. Как известно, для взаимодействия между машинами по протоколу IP используются адреса и порты. Первое на текущий момент представляет из себя 32-битный адрес, наиболее часто его представляют в символьной форме mmm. nnn. ppp. qqq( адрес, разбитый на четыре октета по одному байту в октете и разделённый точками). Второе – это номер порта в диапазоне от 0 до 65535. Эта пара и есть сокет(« гнездо », соответствующее адресу и порту). В процессе обмена, как правило, используется два сокета – сокет отправителя и сокет получателя( рис. 4). Например, при обращении к серверу на HTTP порт сокет будет выглядеть так: 127.0.0.1:3128 или localhost: 3128( рис. 3), а ответ будет поступать на mmm. nnn. ppp. qqq: xxx [ 5 ].
26