DAS_2023_1/romanova_adelina_lab_8/README.md

25 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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