This commit is contained in:
Adelkaks 2024-01-09 18:21:35 +03:00
parent 8fc533cfe8
commit 0959bef234

View File

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