From 344ae488f6c7d8277d23905b18d23f1371f0eb9c Mon Sep 17 00:00:00 2001 From: Anna Sentimental Date: Mon, 18 Dec 2023 22:11:32 +0400 Subject: [PATCH] laba done --- tasks/zinoveva-ad/lab_8/README.md | 62 +++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 tasks/zinoveva-ad/lab_8/README.md diff --git a/tasks/zinoveva-ad/lab_8/README.md b/tasks/zinoveva-ad/lab_8/README.md new file mode 100644 index 0000000..271cc65 --- /dev/null +++ b/tasks/zinoveva-ad/lab_8/README.md @@ -0,0 +1,62 @@ +# Отчет по лабораторной работе №8 + +Выполнила студентка гр. ИСЭбд-41 Зиновьева А. Д. + +## Зачем сложные системы (например, социальная сеть ВКонтакте) пишутся в "распределенном" стиле, где каждое отдельное приложение (или сервис) функционально выполняет только ограниченный спектр задач? + +Существует несколько причин, почему сложные системы, такие как социальные сети, пишутся в распределенном стиле с разделением функциональности: + +1. Распределение нагрузки: Распределенный подход позволяет равномерно распределять нагрузку между разными серверами или сервисами. Это позволяет обеспечить масштабируемость системы и обрабатывать большое количество запросов от пользователей. + +2. Изоляция сбоев: Когда функциональность разделена на отдельные сервисы, сбой в одном сервисе не влияет на работу других. Это повышает отказоустойчивость системы в случае возникновения проблем. + +4. Гибкость и масштабируемость: Распределенный стиль позволяет добавлять или изменять сервисы независимо друг от друга. Это делает систему гибкой и позволяет ей масштабироваться в соответствии с развитием бизнеса и потребностями пользователей. + +## Для чего были созданы системы оркестрации приложений? Каким образом они упрощают / усложняют разработку и сопровождение распределенных систем? + +Системы оркестрации приложений - это инструменты, которые упрощают разработку, развертывание и управление распределенными приложениями и сервисами. Они помогают автоматизировать масштабирование, управление конфигурацией, мониторинг, масштабирование и отказоустойчивость системы. Однако, они также могут быть сложными и требовать дополнительных знаний и усилий для изучения и понимания их работы. + +Сложности: +1. Понимание и использование систем оркестрации требует времени и усилий для изучения и освоения. +2. Системы оркестрации могут иметь свои ограничения и требования к структуре и формату приложений. Она требует совместимости и настройки между различными компонентами системы. + +## Для чего нужны очереди обработки сообщений и что может подразумеваться под сообщениями? + +Очереди обработки сообщений используются для организации и управления потоком информации между разными компонентами или сервисами в распределенной системе. Они позволяют организовать эффективную обработку сообщений, упорядочивая их и обеспечивая их последовательную обработку. + +"Сообщение" может иметь различные значения. + +Это могут быть: +1. Запросы на выполнение определенных операций; +2. Данные для обработки; +3. Уведомления о событиях. + +Очереди обработки сообщений позволяют приложениям эффективно обрабатывать и передавать сообщения, гарантируя их сохранность, упорядоченность и последовательную обработку. + +## Какие преимущества и недостатки распределенных приложений существуют на Ваш взгляд? + +Преимущества: +1. Масштабируемость: Распределенные приложения могут легко масштабироваться горизонтально путем добавления новых узлов. +2. Отказоустойчивость: Если один узел выходит из строя, остальные узлы продолжают работать, что обеспечивает высокую доступность системы. +2. Надежность: Распределенные приложения могут быть устойчивыми к отказу одного или нескольких узлов. +4. Улучшенная производительность: Распределенные приложения могут распределять нагрузку между узлами системы, что позволяет эффективно использовать ресурсы и достигать более высокой производительности. + +Недостатки: +1. Сложность разработки: из-за необходимости управления, синхронизации и т.д. +2. Задержки: могут быть адержки связи из-за необходимости передачи данных по сети. + +## Целесообразно ли в сложную распределенную систему внедрять параллельные вычисления? Приведите примеры, когда это действительно нужно, а когда нет. + +Внедрение параллельных вычислений в распределенную систему может быть целесообразно в определенных случаях. + +Примеры, когда внедрение параллельных вычислений действительно нужно: + +1. Когда нужна обработка больших объемов данных, сложные вычисления. +2. Когда требуется повысить производительность и отзывчивость. +3. Когда требуется обслуживать большое количество одновременных запросов пользователей + +Примеры, когда внедрение параллельных вычислений не обязательно: + +1. Когда не требуется вычислительная мощность; +2. Когда задачи сильно зависят друг от друга и не могут быть эффективно разделены на подзадачи; +3. Когда внедрение может добавить сложности в разработке. \ No newline at end of file