Моделі «клієнт-сервер»
Моделі «Клієнт-сервер». Модель файлового сервера (FS). Модель доступу до віддалених даних (RDA).
Моделі клієнт-сервер - це технологія взаємодії в інформаційній мережі. Сервер має право керування тим чи іншим ресурсом, а клієнт - користування ним. Кожен конкретний сервер визначається видом того ресурсу, яким він володіє. Наприклад, призначенням сервера баз даних є обслуговування запитів клієнтів, пов'язаних з обробкою даних; файловий сервер, або файл-сервер, розпоряджається файлової системою.
Цей принцип поширюється і на взаємодію програм. Програма, що виконує надання відповідного набору послуг, розглядається в якості сервера, а програми, які користуються цими послугами, прийнято називати клієнтами. Програми мають розподілений характер, тобто одна частина функцій прикладної програми реалізується в програмі-клієнті, а інша - в програмі-сервері, а для їх взаємодії визначається деякий протокол.
Розглянемо ці функції. Один з основних принципів технології клієнт-сервер полягає в поділі функцій стандартного інтерактивного додатки на чотири групи, що мають різну природу:
· Функції введення і відображення даних.
· Прикладні функції, характерні для даної предметної області (для банківської системи - відкриття рахунку, переказ грошей і т.д.).
· Функції зберігання і управління інформаційно-обчислювальними ресурсами (базами даних, файловими системами і т.д.).
· Службові функції, які здійснюють зв'язок між функціями перших трьох груп.
Відповідно до цього в будь-якому додатку виділяються наступні логічні компоненти: компонент уявлення (presentation), який реалізує функції першої групи; прикладної компонент (business application), що підтримує функції другої групи; компонент доступу до інформаційних ресурсів (resource manager), що підтримує функції третьої групи, а також вводяться і уточнюються угоди про способи їх взаємодії (протокол взаємодії).
Відмінності в реалізації технології клієнт-сервер визначаються наступними факторами: видами програмного забезпечення, в які інтегрований кожний з цих компонентів; механізмами програмного забезпечення, що використовуються для реалізації функцій всіх трьох груп; способом розподілу логічних компонентів між комп'ютерами в мережі; механізмами, використовуваними для зв'язку компонентів між собою.
Виділяються чотири підходи, реалізовані в наступних моделях:
· Модель файлового сервера (File Server - FS);
· Модель доступу до віддалених даних (Remote Data Access - RDA);
· Модель сервера баз даних (Data Base Server - DBS);
· Модель сервера додатків (Application Server - AS).
Модель файлового сервера. (FS) - є базовою для локальних мереж ПК.
Одним з комп'ютерів в мережі вважається файловим сервером і надає іншим комп'ютерам послуги з обробки файлів. Файловий сервер працює під управлінням мережевої операційної системи і грає роль компонента доступу до інформаційних ресурсів (тобто до файлів). На інших ПК в мережі функціонує додаток, в кодах якого суміщені компонент уявлення та прикладної компонент (рис.5.1.).
Компонент Прикладної компонент доступу до ресурсів
уявлення компонент Файли (файлова система ОС)
Рис.5.1. Модель файлового сервера
Протокол обміну являє собою набір викликів, що забезпечують додатком доступ до файлової системи на файл-сервері.
До недоліків технології даної моделі відносять низький мережевий трафік (передача безлічі файлів, необхідних додатку), невелика кількість операцій маніпуляції з даними (файлами), відсутність адекватних засобів безпеки доступу до даних (захист тільки на рівні файлової системи) і т.д.
Модель доступу до віддалених даних (RDA) - істотно відрізняється від FS-моделі методом доступу до інформаційних ресурсів. У RDA-моделі коди компонента уявлення і прикладного компонента суміщені і виконуються на комп'ютері-клієнті. Доступ до інформаційних ресурсів забезпечується операторами спеціального мови (SQL, якщо мова йде про бази даних) або викликами функцій спеціальної бібліотеки (якщо є спеціальний інтерфейс прикладного програмування - API).
Запити до інформаційних ресурсів направляються по мережі віддаленого комп'ютера, який обробляє і виконує їх, повертаючи клієнту блоки даних (рис.5.2).
Компонент Прикладної компонент доступу до ресурсів
уявлення компонент SQL - сервер, машина даних
Рис.5.2. Модель доступу до віддалених даних
Говорячи про архітектуру клієнт-сервер, мають на увазі дану модель. Основна перевага RDA-моделі полягає в уніфікації інтерфейсу клієнт-сервер у вигляді мови SQL і широкому виборі засобів розробки додатків. До недоліків можна віднести істотну завантаження мережі при взаємодії клієнта і сервера за допомогою SQL-запитів; неможливість адміністрування додатків в RDA, тому що в одній програмі поєднуються різні за своєю природою функції (подання і прикладні).