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