DAS_2023_1/podkorytova_yulia_lab_8/README.md
2024-01-11 05:00:33 +04:00

5.9 KiB
Raw Blame History

Лабораторная работа 8. Устройство распределенных систем

Задание на лабораторную работу

Написать небольшое эссе (буквально несколько абзацев) своими словами на тему "Устройство распределенных систем".

  1. Зачем сложные системы (например, социальная сеть ВКонтакте) пишутся в "распределенном" стиле, где каждое отдельное приложение (или сервис) функционально выполняет только ограниченный спектр задач?
  2. Для чего были созданы системы оркестрации приложений? Каким образом они упрощают / усложняют разработку и сопровождение распределенных систем?
  3. Для чего нужны очереди обработки сообщений и что может подразумеваться под сообщениями?
  4. Какие преимущества и недостатки распределенных приложений существуют на Ваш взгляд?
  5. Целесообразно ли в сложную распределенную систему внедрять параллельные вычисления? Приведите примеры, когда это действительно нужно, а когда нет.

Эссе

Распределенная система - это совокупность компьютеров, которые работают вместе для выполнения общей задачи. Устройство распределенной системы основано на принципе разделения задачи на более мелкие подзадачи, которые могут быть выполнены параллельно на разных узлах. В распределенной системе каждый компьютер (узел) выполняет свою часть работы и обменивается информацией с другими узлами для достижения общей цели.

Сложные системы, такие как социальные сети, принимают решение использовать распределенный стиль разработки по нескольким причинам. Во-первых, это позволяет повысить масштабируемость системы, разделяя ее на отдельные компоненты, которые могут работать параллельно. Во-вторых, распределенные системы обеспечивают повышенную отказоустойчивость, так как сбои в одном из компонентов системы не приводят к полной недоступности всей системы.

Системы оркестрации приложений были созданы для управления приложениями в распределенных средах. Они упрощают разработку и сопровождение распределенных систем, предоставляя средства для автоматизации процессов развертывания, управления ресурсами и обеспечения отказоустойчивости. Использование систем оркестрации также может усложнить разработку, требуя дополнительного времени для изучения их функциональности и интеграции в систему.

Очереди обработки сообщений используются для асинхронной коммуникации и обмена данными между компонентами системы. Под сообщениями может подразумеваться различная информация, которая передается между компонентами системы. Они могут представлять собой запросы на выполнение определенной операции, уведомления о событиях,данные для обработки или информацию об изменениях в системе.

На мой взгляд, к преимуществам распределенных систем можно отнести их масштабируемость и отказоустойчивость. К недостаткам же относятся сложность разработки, управление и координация. Устройство распределенных систем также может быть сложным и требовать дополнительных усилий для обеспечения синхронизации работы узлов.

Внедрение параллельных вычислений в сложную распределенную систему может быть целесообразным в определенных случаях. Параллельные вычисления могут быть полезными для обработки больших объемов данных или выполнения вычисления, требующих большого количества ресурсов, но могут быть необязательными в случае простых вычислений или ограниченных ресурсов.