Лекции / Л-2 - Архитектурные решения
.pdfЦентрализованная архитектура (3)
Многопользовательскую работу обеспечивали:
режим мультипрограммирования (одно приложение считывает данные из ВЗУ, другое приложение обрабатывается процессором);
режим разделения времени (пользователям по очереди выделяются кванты времени на выполнении их программ).
Технология была распространена в эпоху больших ЭВМ
(IBM-370, ЕС-1045, ЕС-1060).
Основной недостаток – резкое снижение производительности при увеличении числа пользователей.
Отход от централизованной архитектуры
Увеличение сложности задач, появление ПК и локальных вычислительных сетей – появление новых архитектур.
Все компьютеры сети обладают ресурсами, и разумно распределить нагрузку.
Необходимо было разработать модель разбиения монолитного приложения на отдельные части и определить принципы взаимодействия этих частей.
Функции стандартного интерактивного приложения разделяются на 5 групп различной природы.
1. Представление данных
Представление данных (Presentation Logic) определяется тем, что пользователь видит на экране, когда работает приложение (интерфейсные экранные формы).
Основные задачи презентационной логики:
формирование экранных изображений;
чтение и запись в экранные формы информации;
управление экраном;
обработка движений мыши и нажатия клавиш клавиатуры.
2. Функциональная обработка
Функциональная обработка (Business Logic) – часть кода приложения, реализующая основные алгоритмы решения задач пользователя.
Для банковской системы – открытие счета, перевод денег с одного счета на другой и т. д.
Эти бизнес-правила реализуются средствами высокоуровневого языка программирования (C++, Visual Basic) или расширенного языка манипулирования данными.
3. Управление данными
Управление данными (Database Logic) – часть кода приложения, связанная с манипулированием данными базы данных.
Данными управляет СУБД (DBMS – Database Manager System). Доступ к данным обеспечивают операторы SQL, которые встраиваются в языки высокого уровня, используемые для написания кода приложения.
4. Управление информационными ресурсами
Управление информационными ресурсами – базами данных, файловыми системами (Database Manager System).
Процессор управления данными – это собственно СУБД, обеспечивающая хранение и управление БД.
Видеале функции СУБД должны быть скрыты от логики приложения, но для рассмотрения архитектуры их выделяют в отдельную часть приложения.
5. Служебные функции
Служебные функции играют роль связок (интерфейсов) между функциями первых четырех групп.
Централизованная архитектура – все части приложения располагаются в единой среде и комбинируются внутри одной исполняемой программы.
Децентрализованная архитектура – задачи могут быть по-разному распределены между серверным и клиентским процессами.
Двухуровневая архитектура «клиент-сервер»
Выделенные группы функций распределены между двумя частями:
клиентская – отвечает за целевую обработку данных и организацию взаимодействия с пользователем;
серверная – обеспечивает хранение данных, обрабатывает запросы и посылает результаты клиенту для специальной обработки.
Вобщем случае эти части функционируют на отдельных компьютерах – к серверу БД с помощью сети подключены компьютеры пользователей (клиенты).
Модель файлового сервера
(FS – File Server) (1)
Также называется моделью удаленного управления данными (RDM – Remote Data Management).
Модель файлового сервера
(FS – File Server) (2)
Была популярна среди отечественных разработчиков,
использовавших системы FoxPro, Clipper, Clarion, Paradox.
Один из компьютеров – файловый сервер, работающий под управлением сетевой ОС (Novell NetWare). Он обеспечивает доступ к информационным ресурсам (файлам).
Достоинство модели – разделение монопольного приложения на два взаимодействующих процесса. Серверный процесс обслуживает множество клиентов, которые обращаются к нему с запросами.