From c99644f2d4bdf61bb87fbec4254e4e4893da4dfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A2=D0=B0=D0=BC=D0=B0=D1=80=D0=B0=20=D0=9C=D0=B0=D1=80?= =?UTF-8?q?=D1=82=D1=8B=D1=88=D0=B5=D0=B2=D0=B0?= Date: Thu, 21 Dec 2023 20:57:28 +0400 Subject: [PATCH] martysheva_tamara_lab_8 is ready --- martysheva_tamara_lab_8/README.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 martysheva_tamara_lab_8/README.md diff --git a/martysheva_tamara_lab_8/README.md b/martysheva_tamara_lab_8/README.md new file mode 100644 index 0000000..eeb937a --- /dev/null +++ b/martysheva_tamara_lab_8/README.md @@ -0,0 +1,26 @@ +# Лабораторная работа №8 - Устройство распределенных систем +Эссе по вопросам: +* Зачем сложные системы (например, социальная сеть ВКонтакте) пишутся в "распределенном" стиле, где каждое отдельное приложение (или сервис) функционально выполняет только ограниченный спектр задач? +* Для чего были созданы системы оркестрации приложений? Каким образом они упрощают / усложняют разработку и сопровождение распределенных систем? +* Для чего нужны очереди обработки сообщений и что может подразумеваться под сообщениями? +* Какие преимущества и недостатки распределенных приложений существуют на Ваш взгляд? +* Целесообразно ли в сложную распределенную систему внедрять параллельные вычисления? Приведите примеры, когда это действительно нужно, а когда нет. +*** +## *Ход работы:* +Сложные системы пишутся в "распределенном" стиле хотя бы потому, что они являются сложными: внедрение новых подсистем легче +осуществить в микросервисной архитектуре, добавив сервис и даже необязательно на том же языке программирования. Можно сказать, что в такой системе +легче поспевать за трендами - примером может служить популяризация вертикальных клипов и VK Клипы от ВКонтакте. Кроме того, работа с серверами - их замена и добавление - тоже очень целесообразна для сложных систем. + +Распределенные системы являются множеством независимых компонентов, и есть необходимость в управлении этими компонентами. Как раз для +этой цели и созданы системы оркестрации приложений. Такие системы упрощают процессы разворачивания, управления конфигурациями и в целом управления и мониторинга приложений. +Сложность может возникать при работе с конфигурациями и с освоением принципов работы систем оркестрации. + +Очереди обработки сообщений как раз необходимы для связи компонентов распределенной системы. Под сообщениями могут подразумеваться +любые данные (текст, картинки, видео и т.д.). Очереди могут служить и неким буфером сообщений: компонент не обработает сообщение, пока не будет к этому готов. Кроме того, +очереди могут обеспечивать ту же балансировку нагрузки. + +К преимуществам распределенных приложений, конечно, можно отнести высокую производительность, отказоустойчивость и масштабируемость. Однако чтобы создать такую систему, потребуется немало +ресурсов и затрат, а также создание будет сопряжено с трудностями обеспечения целостности и согласованности данных. + +Мне кажется, что некоторые задачи, которые действительно требуют параллельного выполнения, целесообразно внедрять в сложную распределенную систему. Например, для потоковой передачи видео. +А вот при банковских операциях, к примеру, внедрение параллельных вычислений может быть даже вредоносным.