distributed-computing/tasks/yudenicheva-ds/lab_8/README.md

29 lines
3.9 KiB
Markdown
Raw Permalink Normal View History

2023-12-20 18:24:28 +04:00
# Отчет по лабораторной работе №8
Выполнила студентка гр. ИСЭбд-41 Юденичева Д.С.
## Задачи
Написать небольшое эссе (буквально несколько абзацев) своими словами. А помогут Вам в этом вопросы из списка:
1. Зачем сложные системы (например, социальная сеть ВКонтакте) пишутся в "распределенном" стиле, где каждое отдельное приложение (или сервис) функционально выполняет только ограниченный спектр задач?
2. Для чего были созданы системы оркестрации приложений? Каким образом они упрощают / усложняют разработку и сопровождение распределенных систем?
3. Для чего нужны очереди обработки сообщений и что может подразумеваться под сообщениями?
4. Какие преимущества и недостатки распределенных приложений существуют на Ваш взгляд?
5. Целесообразно ли в сложную распределенную систему внедрять параллельные вычисления? Приведите примеры, когда это действительно нужно, а когда нет.
## Эссе
Сложные системы пишутся в "распределенном" стиле, так как распределение задач позволяет сделать систему гибкой, где задачи будут выполняться паралелльно, тем самым снизить риск ошибок и сбоев всей системы в целом.
Системы оркестрации приложений автоматизируют процессы распределенных систем, тем самым можно значительно упростить и ускорить весь жизненный цикл системы.
Очереди предоставляют буфер для временного хранения сообщений и конечные точки, которые позволяют подключаться к очереди для отправки и получения сообщений в асинхронном режиме. В сообщениях могут содержаться запросы, ответы, ошибки и иные данные, передаваемые между программными компонентами.
Преимущества распределенных приложений на мой взгляд состоят в том, что система становится устойчива к сбоям и ошибкам, компоненты могут быть разработаны независимо друг от друга и масштабируемость.
Недостатки распределенных приложений заключаются в том, что распределенные приложения зависят от работы сети и разработка данного приложения сложнее, чем других приложений.
Если распределенная система обрабатывает большие объемы данных и выполняет паралелльно множество процессов, то внедрение паралелльных вычислений целесообразно, напротив, только усложнит и увеличит стоимость разработки приложения.