Введение в программирование на PHP5

Трехслойная, клиент/серверная архитектура


Термин "клиент/сервер" относится к применению сетей на основе серверов для управления общим доступом к ресурсам и для распределения задач между аппаратными и программными компонентами. В клиент/серверных сетях на основе Web распределение задач обработки происходит в трех слоях, которые соответствуют трем основным компонентам оборудования/программного обеспечения системы.


Рис. 1.1.  Аппаратные и программные слои трехслойной системы обработки информации

В первом слое (Tier 1) клиентский настольный ПК выполняет работу интерфейса пользователя системы; во втором слое (Tier 2) сервер Web выполняет основные функции системы по обработке; и в третьем слое (Tier 3) сервер базы данных, и в некоторых случаях медиа-сервер, осуществляет требуемые системе функции хранение и извлечения информации.

В свою очередь, каждый из трех аппаратных компонентов содержит соответствующее программное обеспечение. Клиентским программным обеспечением является браузер Web. Сервер Web выполняет сетевую операционную систему (NOS), такую, как Windows Server, Unix Server или Linux Server, и с помощью дополнительного программного обеспечения, например, Internet Information Server или Apache Web Server, реализует службы Интернет, — WWW, FTP, SMTP mail и другие. Сервер базы данных выполняет систему управления базой данных (DBMS), такую, как MySQL, Oracle, Access и другие популярные пакеты. Таким образом, отдельные компоненты выполняют отдельные задачи обработки, которые интегрируются с помощью Web в законченную систему обработки информации.

Рассмотрим, например, посещение Web-сайта е-коммерции, например, Amazon.com. Браузер Web является интерфейсом с сайтом. В ответ на различные "входящие" запросы, которые вы отправляете при просмотре продаваемых товаров, создаются различные страницы "вывода". Запросы вводятся в систему через ссылки Web и посылаемые формы, ответы системы создают страницы HTML, передаваемые назад браузеру для вывода на экране. Браузер выполняет действия по вводу и выводу, необходимые для взаимодействия с сайтом.

За сценой на сервере Web решаются специальные задачи по обработке информации. Когда, например, делается запрос по поиску книги, выполняются программы поиска в базах данных для извлечения подходящих книг и для форматирования вывода для доставки в браузер Web. При просмотре корзины покупателя другие процедуры извлекают выбранные товары и вычисляют общую стоимость заказа. При оплате заказа исполняются специальные программы для соединения с системой проверки кредитной карты и банковскими системами, так что соответствующие счета дебетуются и кредитуются. Множество задач обработки, связанных с перемещением в сети и покупкой, происходят на серверах Web скрыто от пользователя, но они критически важны для осуществления покупки и для осуществления бизнес-транзакций, которые с этим связаны.

Большая часть информации, которая собирается и генерируется во время покупки, хранится в базах данных, которые находятся на отдельных серверах баз данных. Вся информация, которая выводится на экран, извлекается из таблиц базы данных. Выбранные товары хранятся в таблицах базы данных. Практически каждый фрагмент информации о просматриваемых продуктах и транзакциях при покупке сохраняется в больших базах данных в самой системе е-коммерции или в связанных базах данных, которые находятся в центре окружающих ее систем бухгалтерского учета, закупок и дистрибуции.

Даже в самых маленьких коммерческих системах на основе Web присутствуют такие же функции. Браузер Web предоставляет интерфейс пользователя с системой, специальные страницы обрабатывают бизнес транзакции, а одна или несколько баз данных поддерживают информацию, перемещающуюся в системе. Главное состоит в том, что в системах на основе Web любого размера существуют три основных слоя функциональности. Поэтому, с точки зрения разработчика Web, задача состоит в создании трех отдельных компонентов – интерфейса пользователя, процедур обработки бизнес-операций, и компонентов поддержки базы данных — и последующей интеграции в полностью функциональную систему обработки информации.



Содержание раздела