diff --git a/rogashova_ekaterina_lab_8/readme.md b/rogashova_ekaterina_lab_8/readme.md new file mode 100644 index 0000000..6cdd8e9 --- /dev/null +++ b/rogashova_ekaterina_lab_8/readme.md @@ -0,0 +1,29 @@ +# Лабораторная работа №8 + +## Как Вы поняли, что называется распределенной системой и как она устроена? + +Распределенная система (РС) - система, где взаимодействие программных компонентов, выполняемых +на независимых сетевых компьютерах, осуществляется посредством передачи сообщений. + +Сложные системы пишутся в "распределенном стиле" по нескольким причинам. Первое - это масштабируемость. +Каждое приложение или сервис может масштабироваться отдельно. +Второе - устойчивость. Если один сервис выйдет из строя - не выйдет из строя вся система. Это очень большой плюс для сложных и больших систем. +Также можно отметить, что такие в такие системы легче вносить изменения. Разрабатывая или изменяя один сервис нет необходимости трогать другие. + +Оркестрация - это автоматическое размещение, координация и управление сложными системами и службами. +Пример системы оркестрации: Kubernetes. +Оркестраторы позволяют разработчикам проще управлять ресурсами, сокращая время на развертывание и обновления приложений. +Но с другой стороны - эти системы добавляют сложности в архитектуру. + +Очереди обработки сообщений (Kafka, RabbitMQ) используются для асинхронной коммуникации между сервисами. +Под словом "сообщение" могут скрываться - данные, уведомления о событиях, задачи на фоновые обработки и т.д. + +В изучении курса "Распределенные вычисления и приложения" для себя я выделила такие преимущества РС: +1. Надежность системы (система не выйдет из строя, если выйдут из строя только некоторые компоненты) +2. Масштабируемость (легче добавлять новые функции) + +Основным недостатком обозначу сложность проектирования. + +Внедрение параллельных вычислений в РС - возможно. Но походит не для всех ситуаций. +Например, если необходима обработка больших данных или есть высоконагруженные операции, которые могут быть распределены между узлами. +Параллельные вычисления не нужны, если задачи простые, данных не много. Иначе, если применять параллельные вычисления в такой РС, то это только усложнит саму архитектуру и может привести к уменьшению производительности.