From 8263eef866d8a88955f2400fc5602daf452d0787 Mon Sep 17 00:00:00 2001 From: = <=> Date: Fri, 3 Jan 2025 16:21:37 +0400 Subject: [PATCH] lab8 --- davydov_yuriy_lab_8/README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 davydov_yuriy_lab_8/README.md diff --git a/davydov_yuriy_lab_8/README.md b/davydov_yuriy_lab_8/README.md new file mode 100644 index 0000000..9afec31 --- /dev/null +++ b/davydov_yuriy_lab_8/README.md @@ -0,0 +1,27 @@ +# Лабораторная работа №8 - Про устройство распределенных систем + +## ПИбд-42 || Давыдов Юрий + +### Задание: + +Написать небольшое эссе (буквально несколько абзацев) своими словами. + +Сложные системы, такие как социальная сеть ВКонтакте, разрабатываются в распределённой архитектуре, потому что такой подход позволяет эффективно управлять запросами, обеспечивать отказоустойчивость и масштабируемость. Каждый сервис выполняет узкоспециализированные функции, например, сервис аутентификации или сервис рекомендаций. Это важно, потому что в случае сбоя одного из сервисов остальные продолжают работать, что снижает вероятность полной остановки системы. + +Системы оркестрации приложений предназначены для управления различными компонентами распределённой системы. Они упрощают разработку и обслуживание, автоматизируя процессы управления, масштабирования и обновлений. Однако они требуют от разработчиков дополнительных знаний и умений, что добавляет сложности. Примеры таких систем — Kubernetes и Docker Swarm. + +Очереди обработки сообщений используются для асинхронного обмена данными между сервисами, обеспечивая их взаимодействие. Сообщения могут быть любыми данными или запросами, которые передаются между компонентами системы. Очереди помогают эффективно управлять потоком данных, предотвращая перегрузки. Примеры таких систем — RabbitMQ и Apache Kafka. + +Преимущества распределённых систем: + +Повышенная отказоустойчивость; +Лучшая масштабируемость; +Возможность балансировки нагрузки между серверами. +Недостатки: + +Более сложная разработка по сравнению с монолитными системами; +Монолитные системы обычно требуют меньше времени на взаимодействие компонентов, так как все компоненты работают в одном процессе; +Распределённые системы требуют дополнительных организационных и ресурсных затрат для разработки и поддержки. +Внедрение параллельных вычислений в сложные распределённые системы целесообразно в случаях, когда необходимо обрабатывать независимые задачи или когда требуется высокая производительность, например, при выполнении сложных математических расчётов или обработке больших данных. Однако это не всегда оправдано, особенно когда задачи маленькие или последовательные, как, например, рекурсивное вычисление факториала числа. + +Итак, распределённые системы — это важная и необходимая архитектура, которая может быть оптимальной для некоторых случаев, но не всегда. Правильный выбор подхода на этапе проектирования критичен для успеха системы.