Одним из подходов к построению распределенных приложений является трехуровневая модель, обеспечивающая эффективный принцип разработки.
В любом приложении можно выделить прикладные службы. Трехуровневая модель делит прикладные службы на три категории: представление, бизнес-правила, данные), организованные таким образом, чтобы максимально повысить эффективность совместной работы. Уровни и соответствующие им службы образуют следующую структуру:
Каждая служба играет определенную роль в приложении.
Служба БД позволяет заправшивать и управлять БД
Служба пользовательского интерфейса позволяет приложению выводить пользовательский интерфейс
Почтовая служба обеспечивает в приложении работу с ЭП
Сетевая служба реализует взаимодействия клиента и сервера
Файловая служба позволяет приложению манипулировать файлами, хранящимися на дисках
Справочная служба организует в приложении справочную систему
Служба интеграции позволяет приложению общаться с другим службами и приложениями
|
|
- На уровне представлений формируется пользовательский интерфейс. В старой школе он строился на VB. Теперь пользовательский интерфейс генерируется совместными усилиями web- броузера и web-сервера, причем сервер создает код HTML, который выводится на экран клиентского компьютера. Ответственность за отслеживание действий пользователя возлагается на броузер.
- Уровень бизнес-правил. Бизнес-правила оперируют с некоторым набором процедур, связанных с выполнением одной из задач компании. Правила могут быть простыми или сложными. Программная реализация правил ведения коммерческой деятельност компании называется бизнес-правилами или бизнес-логикой. В объектно-ориентированном программировании бизнес-правила реализуются через соответствующие объекты. Можно использовать элементы ActiveX, написаниые на VB.
- Уровень данных отвечает за формирование запросов и манипулирование БД на основе инструкций, получаемых от уровня бизнес-правил. Важный принцип разработки трехуровневого программного решения состоит в том, что уровень представлвения никогда не обращается напрямую к уровню данных. Это делается специально для инкапсуляции операций на уровне бизнес-правил. Если разработчик аккуратно отразит реальные действия компании в процедурах и операциях на уровне бизнес-правил, можно будет гарантировать точное соблюдение всех установленных в компании ограничений. Иначе разработчики уровней предстапвления и уровня данных могут исказить установленные в компании правила коммерческой деятельности.
МАСШТАБИРУЕМОСТЬ
Масштабируемость является важной характеристикой. Обычно трафик сайта составляет 1000 посещений, а что будет, если он увеличиться до 10000000 посещений? Способно ли приложение выдержать такие колебания нагрузки. Первым шагом на пути поддержки увеличения нагрузки является переход на трехуровневую архитектуру.