Презентация ИС 2013_1
.pdfТрехуровневая клиент-серверная архитектура
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Компонент |
|
||
|
Компонент |
|
|
|
|
|
|
|
Прикладной |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
доступа к |
|
||||||||||
|
представления |
|
|
|
|
|
|
|
компонент |
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
ресурсам |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
API |
|
|
Сервер |
|
|
SQL |
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DB- |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
Клиент |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
приложений |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
сервер |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Клиент содержит компонент представления, который обеспечивает ввод и отображение данных, и
взаимодействует через интерфейс приложения-
API интерфейс (Application Program Interface) с
сервером приложений.
171
Особенности организации клиента в трехуровневой архитектуре
Клиент - это интерфейсный компонент, который представляет собственно приложение для конечного пользователя (первый уровень).
На первый уровень обычно выносится простейшая бизнес-логика: интерфейс авторизации, алгоритмы шифрования, проверка вводимых значений на допустимость и соответствие формату, несложные операции (сортировка, группировка, подсчет значений) с данными, уже загруженными на терминал.
Первый уровень не должен иметь прямых связей с базой данных и быть нагруженным основной бизнес-логикой.
172
Особенности организации сервера приложений в трехуровневой
архитектуре
Сервер приложений располагается на втором уровне. На втором уровне сосредоточена большая часть бизнес-логики.
Вне сервера приложений остаются фрагменты, расположенные на клиентах (терминалах), а также те части, которые располагаются на третьем уровне (хранимые процедуры и триггеры).
Второй уровень строится как программный интерфейс, связывающий клиентские компоненты с прикладной логикой базы данных.
173
Особенности организации сервера баз данных в трехуровневой архитектуре
Сервер базы данных обеспечивает хранение данных и выносится на третий уровень.
Обычно это стандартная реляционная или объектноориентированная СУБД.
Третий уровень представляет собой базу данных вместе с хранимыми процедурами, триггерами и схемой, описывающей приложение в терминах реляционной модели.
174
АРМ отдела продаж
Пользовательский интерфейс отдела продаж
Клиентская часть отдела продаж
Сервер приложений
Приложение “Продажа”
Приложение “Запасы”
Приложение “Закупки”
Пример
трехуровневой клиент-серверной архитектуры
Сервер БД
Объектная база данных
175
Пример трехуровневой клиентсерверной архитектуры
Работа клиентской части приложения сводится к вызову необходимых функций сервера приложений, которые называются сервисами.
Например, клиенту нужен отчет по каким-то данным, для этого необходимо вызвать процедуру формирования отчета (сервис приложения). Приложение (прикладная программа) обращается к DB-серверу за данными.
Прикладные программы обращаются к серверу базы данных с помощью SQL запросов.
176
Достоинства трехуровневой архитектуры
1.Высокая безопасность и высокая надёжность.
2.Низкие требования к скорости канала (сети) между терминалами и сервером приложений.
3.Низкие требования к производительности и техническим характеристикам терминалов, как следствие снижение их стоимости. Терминалом может выступать не только компьютер, но и, например, мобильный телефон.
4.SQL-сервер и сервер приложений могут работать параллельно, причем сервер приложений может быть менее мощным по сравнению с SQL-сервером.
5.Скорость и надежность обработки данных можно повысить за счет дублирования программного обеспечения на нескольких серверах приложений, которые могут заменять друг друга в сети в случае технической неисправности.
177
Недостатки трехуровневой архитектуры
По сравнению c клиент-серверной или файлсерверной архитектурой можно выделить следующие недостатки трёхуровневой архитектуры:
более высокая сложность создания приложений;
сложнее в разворачивании и администрировании;
высокие требования к производительности серверов приложений и сервера базы данных, а, значит, и высокая стоимость серверного оборудования;
высокие требования к скорости канала (сети)
между сервером базы данных и серверами приложений. 178
Архитектура клиент-сервер, основанная на Internet-технологиях
Данная архитектура называется многоуровневой, т. к. для нее характерны отношения “многие ко многим” :
между клиентскими рабочими станциями и серверами приложений;
между серверами приложений и серверами БД.
Такая архитектура распространяется на Интернет-приложения, связывающие множество участков делового процесса, территориально удаленных друг от друга в рамках одного или нескольких предприятий.
Архитектура основана на применении протокола
TCP/IP. |
|
На данной архитектуре базируется программное |
|
обеспечение серверов транзакций. |
179 |
Архитектура клиент-сервер, основанная на Internet-технологиях
1.Использование сервера транзакций.
2.Применение JAVA-апплетов.
3.Сервис-ориентированная архитектура SOA (Service-Oriented Architecture)
180