Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Всі відповіді СП.docx
Скачиваний:
10
Добавлен:
28.01.2023
Размер:
217.28 Кб
Скачать
    1. Архітектура розподілених систем

Розподілені системи – це системи, у яких ПЗ виконується на слабкоінтегрованій групі паралельно працюючих процесорів, зв’язок між якими здійснюється через мережу. У такій системі, оброблення інформації зосереджене не на одній обчислювальній машині, а розподілене між декількома комп‘ютерами.

Найпростішою розподіленою системою є багатопроцесорна система. Вона складається з множини різних процесів, які можуть (але не обов’язково) виконуватися на різних процесорах. Цю модель використовують у великих системах реального часу. Ці системи збирають інформацію, приймають на її основі рішення і відправляють сигнали виконавчому механізму, що змінює системне оточення. Усі процеси, пов’язані зі збиранням інформації, прийняттям рішень і керуванням виконавчим механізмом, можуть виконуватися на одному процесорі під керуванням планувальника завдань. Використання декількох процесорів підвищує продуктивність системи і її здатність до відновлення. Розподіл процесів між процесорами може перевизначатися (властиво критичним системам) або ж перебувати під керуванням диспетчера процесів.

Системи ПЗ, одночасно виконуючи множину процесів, не обов’язково є розподіленими. Якщо в системі більше ніж один процесор, реалізувати розподіл процесів нескладно. Тому багатопроцесорні програмні системи не обов’язково створювати на основі розподілених систем.

В архітектурі клієнт/сервер програмний додаток моделюється як набір сервісів, надаваних серверами, і множин клієнтів, що використовують ці сервіси.

У системі між процесами і процесорами необов’язково дотримуватися відношення «один до одного». У загальному випадку клієнти і сервери являють собою швидше логічні процеси, ніж фізичні машини, на яких виконуються ці процеси. Архітектура системи клієнт/сервер повинна відображати логічну структуру розроблюваного програмного додатка.

Архітектура розподілених об‘єктів. У моделі клієнт/сервер розподіленої системи клієнти і сервери розрізнюються. Клієнт запитує сервіси лише в сервера, але не в інших клієнтів; сервери можуть функціонувати як клієнти і запитувати сервіси в інших серверів, але не в клієнтів; клієнти повинні знати про сервіси, надавані певними серверами, і про те, як вони взаємодіють. Така модель більш придатна для багатьох типів додатків, але водночас обмежує розробників системи, які змушені вирішувати, де надавати сервіси. Вони також повинні підтримувати масштабованість і розробити засоби включення клієнтів у систему на розподілених серверах.

Загальний підхід, застосовуваний у проектуванні розподілених систем, полягає в усуненні розбіжностей між клієнтом і сервером і розробленні архітектури системи за принципом розподілених об’єктів. Основними компонентами цієї архітектури системи є об’єкти, що надають набір сервісів через свої інтерфейси. Інші об’єкти викликають ці сервіси, не розділяючи клієнта і сервер.

Архітектура брокерів запитів до загальних об‘єктів. Для реалізації архітектури розподілених об’єктів необхідне проміжне ПЗ (брокери запитів до об’єктів), що організовує взаємодію між розподіленими об’єктами. Тут є ймовірність виникнення певних проблем, оскільки об’єкти в системі можуть бути реалізовані різними мовами програмування, можуть запускатися на різних платформах і їх імена не повідомляються всім іншим об’єктам системи. Тому проміжне ПЗ має виконувати роботу для підтримання постійної взаємодії об’єктів.