Merge pull request '[Л/Р 8] Воронкова Лиза' (#165) from Liza_Voronkova/distributed-computing:voronkova-es-lab-8 into main

Reviewed-on: http://student.git.athene.tech/v.moiseev/distributed-computing/pulls/165
This commit is contained in:
Vladislav Moiseev 2023-12-21 00:17:04 +04:00
commit 0c812871e6

View File

@ -0,0 +1,5 @@
Распределенные системы - это системы, состоящие из нескольких компонентов, которые распределены по разным устройствам или серверам. Эти компоненты могут быть расположены в разных местах, например, в разных городах или странах.
Самое первое для чего сложные системы пользуются распределенной системой - это масштабируемость. Большие системы зачастую приходят к тому, чтобы добавлять больше серверов для обработки запросов. Это позволяет системе справится с большим количеством юзеров. Второе, это надежность. Если один из компонентов выйдет из строя, то другие продолжают работать, т.к. они не зависят друг от друга. Ну и третье, это удобство обслуживания системы. Отдельные компоненты обновляются, заменяются без затрагивания всей системы.
Системы оркестрации были созданы для автоматического развертывания, масштабирования и управления контейнерами некоторого приложения. Они упрощают разработку и сопровождение систем т.к. предоставляют инструменты для управления ЖЦ и мониторинга состояния. Но также есть аспекты, которые усложняют работу с системами оркестрации. Например, сложность настройки и управления. Системы оркестрации, такие, как Kubernetes, имеют множество конфигурационных параметров, которые могут быть сложными для понимания и настройки. Также, если использовать систему неправильно, есть риск увеличения сложности системы.
Очередь обработки сообщений - это механизм, который позволяет асинхронно обрабатывать данные. Она позволяет отправлять задания в очередь, которая будет выполнена позже. Сообщениями считаются запросы к API, обновление данных в базе и сигналы для микросервисов.
Параллельные вычисления нужно внедрять на основе множества факторов. Например, какие требования к производительности, характер нагрузки и так далее. Их целесообразно использовать в обработке большого количества данных или в оптимизации производительности, но не стоит использовать если добавление вычислений усложнит систему или при органичности ресурсов.