Недоліки архітектури «клієнт-сервер»
ü В клієнтській частині застосування суміщуються:
· Досить складні функції обробки даних, що надходять від сервера;
· Більш прості функції організації інтерфейсу користувача.
ü Обробка даних (бізнес-логіка застосування) змінюється під час життєвого циклу незначною мірою. Інтерфейсна ж частина може суттєво змінюватись в залежності від вимог конкретного замовника;
ü Розповсюдження Internet надає користувачу можливість доступу до даних за допомогою мережі. Функціональних можливостей архітектури «клієнт-сервер» для цієї мети замало (клієнт, як правило, не має ніяких обчислюваних ресурсів крім засобів навігації в мережі).
Трьохрівнева архітектура «клієнт-сервер»
ü Відбувається функціональна декомпозиція клієнтського компонента на дві складові:
· Сервер застосувань, що реалізує обробку даних (бізнес-логіку застосування;
· Тонкий клієнт, що забезпечує інтерфейс та доступ до результатів обробки.
ü Серверний компонент лишився без змін, але одержав нову назву – сервер баз даних.
Обробка транзакції у трьохрівненвій архітектурі (Приклад 1)
[слайд на стор. 27, Lect_2.pdf]
Інструментальні засоби створення застосувань трьохрівневої архітектури
ü Компонентна модель середовища розробки передбачає створення основної частини програми у вигляді набору взаємопов’язаних компонентів-класів об’єктно-орієнтованої мови;
ü Існують інструментальні засоби, орієнтовані на розробку або клієнтської частини, або сервера застосувань. Більшість таких засобів надають розробникам інструменти для створення обох складових трьохрівневої архітектури.
Стандарти для роботи в трьохрівневій архітектурі CORBA, COM/DCOM та GLOBE
ü Розділення клієнта на дві складові вимагає взаємодії між ними. Вона має:
· Бути досить щільною (візуалізація даних від сервера з мінімальною затримкою);
· Дозволяти обмін даними за протоколами глобальних мереж;
· Мати стандартні специфікації на таку взаємодію.
ü Нові стандарти на таку взаємодію:
· Сімейство промислових стандартів CORBA;
· Сімейство стандартів COM/DCOM;
· Розподілена система об’єктів GLOBE.