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