DAS_2023_1/shadaev_anton_lab_8
2023-12-23 20:03:38 +04:00
..
README.md Add lab8 2023-12-23 20:03:38 +04:00

Лабораторная работа № 8. Как Вы поняли, что называется распределенной системой и как она устроена?

Задание

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

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

Эссе

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

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

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

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

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