Трьохрівнева архітектура.
Двохрівнева архітектура
Така архітектура є традиційною. Вона передбачає розподіл основних задач, що вирішуються між двома рівнями. Клієнтська частина (клієнт) –перший рівень – головним чином відповідає за представлення даних на екрані комп`ютера користувача. Серверна частина або сервер – другий рівень – забезпечує доступ клієнта до даних.
Служба представлення даних керують інтерфейсом користувача і реалізують основні алгоритми роботи додатку. Служби доступу до даних реалізують лише частину алгоритмів роботи додатку – перевірку правильності вводу даних, а також реалізує доступ до даних.
Перший рівень | Задачі |
Клієнт | · Інтерфейс користувача; · Основні алгоритми розрахунків та обробки даних. |
Другий рівень | Задачі |
Сервер БД | · Перевірка даних на сервері; · Доступ до бази даних. |
В середині 90-х років, внаслідок сторінкового ускладнення додатків та комп`ютерів і зростання обсягу інформації, виникла необхідність переглянути традиційну архітектуру. В 1995 році з`явився новий варіант моделі дворівневої архітектури, який був покликаний вирішити проблему масштабування додатку. В новій архітектурі було запропоновано 3 рівні:
1. Рівень користувацького інтерфейсу, що розміщується на комп’ютері кінцевого користувача (клієнт).
2. Рівень реалізації прикладних алгоритмів і засобів обробки даних. Це проміжний рівень розміщення на сервері, його називають сервером додатків.
3. СУБД, в якій зберігаються дані, необхідні для функціонування проміжного рівня. Цей рівень може бути реалізований на окремому сервері БД.
Перший рівень | Задачі |
Клієнт | · Інтерфейс користувача |
Другий рівень | Задачі |
Сервер додатку | · Алгоритми розрахунків · Алгоритми розробки даних. |
Третій рівень | Задачі |
Сервер БД | · Перевірка даних; · Доступ до БД. |
Трьохрівнева архітектура забезпечує наступні переваги порівняно з двохрівневою:
- «Тонкий» клієнт, для якого потрібне менш дороге апаратне забезпечення;
- Додаткова модульність, яка забезпечує модифікацію або заміну ПЗ кожною рівня без впливу на інші;
- Відокремлення основних засобів реалізації прикладних алгоритмів, від функцій БД спрощує задачу рівномірного розподілу навантаження.
Окрім цього системи з такою архітектурою доволі природно вписуються в систему (браузер – клієнт, web-сервер – сервер-додатку).
Контрольні питання
1. Охарактеризуйте в загальних рисах клієнт-серверну архітектуру.
2. Які можливі її реалізації?
3. Замалюйте приблизну схему.
4. Перерахуйте основні функції клієнтської частини.
5. Перерахуйте основні функції серверної частини.
6. В чому полягають переваги такої архітектури?
7. Які складові рівні можна виділити в двохрівневій системі?
8. Назвіть функції кожної з них.
9. Який додатковий рівень наявний в трьохрівневій системі?
10. В чому полягають його функції?
11. Чим відрізняється трьох рівнева система від двохоівневої?
12. На вашу думку, яка з них ефективніша?