Сучасні комп'ютерні обчислювальні і локальні мережі мають або однорангову (коли всі вузли пов'язані безпосередньо і рівноправні), або ієрархічну структуру, одним з видів якої є клієнт-серверна архітектура. Подання про організацію такої моделі засновано на розумінні, чим відрізняється клієнт від сервера, і поділі ресурсів.
Зміст статті
- порівняння
- Таблиця
сервер - комп'ютер, який обслуговує інші комп'ютери в мережі та надає їм свої ресурси для вирішення певних завдань.
клієнт - комп'ютер, що використовує ресурси сервера і надає користувачеві можливість взаємодії з системою і мережею.
Ця ж схема використовується при організації мережевих додатків, тільки в ролі основних вузлів виступають серверна і клієнтська частини софта.
порівняння
Наочно цю модель взаємодії можна представити, згадавши розраховані на багато користувачів програми та ігри: ми запускаємо на своєму пристрої клієнтську програму і бачимо на екрані ферму, танки або власну фотогалерею в Dropbox. Якщо немає підключення до глобальної або локальної мережі (в залежності від місця розміщення), годувати корів і битися в команді не вийде: всі файли і дані зберігаються на сервері.
РекламаВ рамках невеликої домашньої або офісної мережі, побудованої по ієрархічній моделі, відмінність клієнта від сервера може лежати виключно в площині програмного забезпечення. Перший відправляє запити, другий їх обробляє і повертає результат; всі процеси здійснюються за допомогою встановлених на комп'ютери додатків. Технічно машини можуть бути будь-якими, якщо ПО не вимагає високого рівня продуктивності комплектуючих. Для виконання ресурсоємних завдань в якості сервера використовується потужний ПК, тоді як робоча станція повинна лише бути зручною користувачеві і забезпечувати роботу комунікаційних каналів.
У комп'ютерів, що виконують серверні ролі в мережі з великою кількістю клієнтів, апаратна частина зазвичай посилена кількома масивами накопичувачів з високою швидкістю читання і запису даних. Також ці машини забезпечені максимально можливими обсягами оперативної пам'яті. Зате периферійні пристрої для них зайві: монітори, клавіатури, миші, аудіосистеми через відсутність прямого контакту з користувачем просто виключені з системи.
Отже, в чому різниця між клієнтом і сервером функціонально? Перший ініціює роботу програмного забезпечення (за участю користувача або без такого), другий чекає від нього запиту. Клієнту відомий повну адресу сервера і спосіб звернення до нього, а той отримує відомості про клієнта після початку взаємодії. Робочі станції можуть відключатися за розкладом або бажанням користувача, серверний ПК же працює завжди (або поки запущено серверний додаток). Непрацездатність одного з клієнтів ні на що не вплине, тоді як вихід з ладу серверного обладнання означає недоступність обслуговування для всіх підключаються до нього вузлів мережі.
до змісту ↑Таблиця
клієнт | сервер |
Відправляє запити серверу по мережі | Отримує запити, обробляє і повертає результат клієнтові |
Встановлено клієнтське ПЗ | Встановлено серверне ПЗ |
Вимоги до апаратних ресурсів системи мінімальні | Залежно від кількості клієнтів і складності завдань вимагає відповідної продуктивності |
Безпосередньо взаємодіє з користувачем | Чи не взаємодіє з користувачем, тому може не мати периферійних пристроїв |
Може включатися і відключатися довільно | Працює завжди, поки є необхідність обслуговування клієнтів |
Заздалегідь відомий спосіб звернення до сервера і його адреса | Отримує відомості про клієнта з запиту |