о доступу до даних).
Слід пам'ятати, що перевантаження збережених процедур прикладної логікою може перевантажити сервер, що призведе до втрати продуктивності. Ця проблема особливо актуальна при розробці великих інформаційних систем, в яких до сервера може одночасно звертатися велику кількість клієнтів. Тому в більшості випадків слід приймати компромісні рішення: частину логіки додатка розміщувати на стороні сервера, частина - на стороні клієнта. Такі клієнт-серверні системи називаються системами з розділеною логікою. Дана схема при вдалому поділі логіки дозволяє отримати більш збалансовану завантаження клієнтів і сервера, але при цьому ускладнюється супровід додатків.
Створення архітектури клієнт-сервер можливо і на основі багатотермінальні системи. У цьому випадку в багатозадачному середовищі сервера додатків виконуються програми користувачів, а клієнтські вузли виродилися і представлені терміналами. Подібна схема інформаційної системи характерна для UNIX.
3.1.4 Багаторівнева архітектура
Багаторівнева архітектура стала розвитком архітектури клієнт-сервер і в своїй класичній формі складається з трьох рівнів:
· нижній рівень являє собою додатка клієнтів, виділені для виконання функцій і логіки уявлень PS і PL і мають програмний інтерфейс для виклику програми на середньому рівні;
· середній рівень являє собою сервер додатків, на якому виконується прикладна логіка BL і з якого логіка обробки даних DL викликає операції з базою даних DS;
· верхній рівень являє собою віддалений спеціалізований сервер бази даних, виділений для послуг обробки даних DS і файлових операцій FS (без ризику використання збережених процедур).
Подібну концепцію обробки даних пропагують, зокрема, фірми Oracle, Sun, Inprise та ін
Трирівнева архітектура дозволяє ще більше збалансувати навантаження на різні вузли і мережа, а також сприяє спеціалізації інструментів для розробки додатків і усуває недоліки дворівневої моделі клієнт-сервер.
Централізація логіки додатка спрощує адміністрування і супровід. Чітко розділяються платформи та інструменти для реалізації інтерфейсу та прикладної логіки, що дозволяє з найбільшою віддачею реалізовувати їх фахівцям вузького профілю. Нарешті, зміни прикладної логіки не зачіпають інтерфейсу, і навпаки. Але оскільки межі між компонентами PL, BL і DL розмиті, прикладна логіка може з'явитися на всіх трьох рівнях. Сервер додатків за допомогою монітора транзакцій забезпечує інтерфейс з клієнтами та іншими серверами, може управляти транзакціями і гарантувати цілісність розподіленої бази даних. Засоби віддаленого виклику процедур найбільш відповідають ідеї розподілених обчислень: вони забезпечують з будь-якого вузла мережі виклик прикладної процедури, розташованої на іншому вузлі, передачу параметрів, віддалену обробку і повернення результатів.
З ростом систем клієнт-сервер необхідність трьох рівнів стає все більш очевидною. Продукти для триланкової архітектури, так звані монітори транзакцій, є відносно новими. Ці інструменти в основному орієнтовані на середу UNIX, проте прикладні сервери можна будувати на базі Microsoft Windows NT з використанням виклику віддалених процедур для організації зв'язку клієнтів з сервером додатків. На практиці в ло...