Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tekhnologiyi_rozpodilenikh_sistem_ta_paralelnik...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
850.43 Кб
Скачать
  1. Переваги розподілених обчислень.

Методи розподіленого програмування дозволяють скористатися перевагами ресурсів, розміщених в Internet, в корпоративних Intranet і локальних мережах. Розподілене програмування зазвичай включає мережеве програмування в тій або іншій формі. Це означає, що програмі, яка виконується на одному комп'ютері в одній мережі, потрібен деякий апаратний або програмний ресурс, який належить іншому комп'ютеру в цій же або віддаленій мережі. Розподілене програмування має на увазі спілкування однієї програми з іншою через мережеве з'єднання , яке включає відповідне обладнання (від модемів до супутників). Відмінною рисою розподілених програм є те, що вони розбиваються на частини. Ці частини звичайно реалізуються як окремі програми, які, як правило, виконуються на різних комп'ютерах і взаємодіють один з одним через мережу. Методи розподіленого програмування надають доступ до ресурсів, які географічно можуть знаходитися на великій відстані один від одного. Наприклад, розподілена програма, розділена на компонент Web-сервера і компонент Web-клієнта, може виконуватися на двох різних комп'ютерах. Компонент Web-сервера може розташовуватися, наприклад, в Африці, а компонент Web-клієнта — в Японії. Частина Web-клієнта може використовувати програмні і апаратні ресурси компоненту Web-сервера, не дивлячись на те, що їх розділяє величезна відстань, і майже напевно вони відносяться до різних мереж, що функціонують під управлінням різних операційних середовищ. Методи розподіленого програмування передбачають сумісний доступ до дорогих програмних і апаратних ресурсів. Наприклад, високоякісний голографічний принтер може володіти спеціальним програмним забезпеченням сервера друку , яке надає відповідні послуги для ПЗ клієнта. ПЗ клієнта друку розміщується на одному комп'ютері, а ПЗ сервера друку — на іншому. Як правило, для обслуговування безлічі клієнтів друку достатньо тільки одного сервера друку. Розподілені обчислення можна використовувати для створення певного рівня надмірності обчислювальних засобів на випадок аварії. Якщо розділити програму на декілька частин , кожна з яких виконуватиметься на окремому комп'ютері, то деякою з цих частин ми можемо доручити одну і ту ж роботу. Якщо з якоїсь причини один комп'ютер відмовить, його програму замінить аналогічна програма, що виконується на іншому комп'ютері. Ні для кого не секрет, що бази даних здатні зберігати мільйони, трильйони і навіть квадратільйони одиниць інформації. І, звичайно ж, нереально кожному користувачу мати копію подібної бази даних. Адже користувачі і комп'ютер, що містить базу даних, часто знаходяться не просто в різних будівлях, а в різних містах або навіть країнах. Але саме методи розподіленого програмування дають можливість користувачам (незалежно від їх місцезнаходження) звертатися до таких баз даних.

6. Найпростіші моделі розподілених обчислень.

Можливо, найпростішою і поширенішою моделлю розподіленої обробки даних є модель типу "клієнт/сервер". У цій моделі програма розбивається на дві частини : одна частина називається сервером, а інша — клієнтом. Сервер має прямий доступ до деяких апаратних і програмних ресурсів, які бажає використовувати клієнт. В більшості випадків сервер і клієнт розташовуються на різних комп'ютерах. Звичайно між клієнтом і сервером існує відношення типу "багато-до-одного ", тобто, як правило, один сервер відповідає на запити багатьох клієнтів. Сервер часто забезпечує опосередкований доступ до величезної бази даних, дорогого устаткування або деякої колекції програм. Клієнт може запитати дані, що цікавлять його, зробити запит на виконання обчислювальної процедури або обробку іншого типу. В якості прикладу програми типу "клієнт/сервер" приведемо механізм пошуку (search engine). Механізми (або машини) пошуку використовуються для пошуку заданої інформації в Internet або корпоративної Intranet. Клієнт служить для отримання ключового слова або фрази, яка цікавить користувача. Частина ПЗ клієнта потім передає сформований запит тій частині ПЗ сервера, яка володіє засобами пошуку інформації по заданому користувачем ключовому слову або фразі. Сервер або має прямий доступ до інформації, або пов'язаний з іншими серверами, які мають його. У ідеальному випадку сервер знаходить шукане користувачем ключове слово або фразу і повертає знайдену інформацію клієнту. Не дивлячись на те, що клієнт і сервер є окремі програми, що виконуються на різних комп'ютерах, разом вони складають єдину програму. Розділення ПЗ на частини клієнта і сервера і є основний метод розподіленого програмування. Модель типу "клієнт/сервер" також має інші форми, які залежать від конкретного середовища. Наприклад, термін "виробник-споживач (producer-consumer)" можна вважати близьким родичем терміну "клієнт/сервер". Звичайно клієнт-серверним програмами називають великі програми, а термін "виробник-споживач" відносять до програм меншого об'єму. Якщо програми мають рівень операційної системи або нижче, до них застосовують термін "виробник-споживач", якщо вище — то термін "клієнт/сервер" (звичайно ж, винятки є зі всякого правила).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]