forked from Alexey/DAS_2023_1
Merge pull request 'mashkova_margarita_lab_8' (#104) from mashkova_margarita_lab_8 into main
Reviewed-on: http://student.git.athene.tech/Alexey/DAS_2023_1/pulls/104
This commit is contained in:
commit
5e2305d3ac
@ -1,37 +0,0 @@
|
|||||||
# Лабораторная работа №7
|
|
||||||
## ПИбд-42 Машкова Маргарита
|
|
||||||
## Задание
|
|
||||||
Написать небольшое эссе (буквально несколько абзацев) своими словами. А помогут Вам в этом вопросы из списка:
|
|
||||||
|
|
||||||
1. Какие алгоритмы и методы используются для балансировки нагрузки?
|
|
||||||
2. Какие открытые технологии существуют для балансировки нагрузки?
|
|
||||||
3. Как осуществляется балансировка нагрузки на базах данных?
|
|
||||||
4. Реверс-прокси как один из элементов балансировки нагрузки.
|
|
||||||
|
|
||||||
|
|
||||||
## Эссе
|
|
||||||
|
|
||||||
### Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах
|
|
||||||
|
|
||||||
Балансировка нагрузки является важным аспектом в области информационных технологий.
|
|
||||||
Для достижения оптимального распределения нагрузки между ресурсами существуют различные алгоритмы и методы.
|
|
||||||
|
|
||||||
Один из таких методов - `Round Robin`, при котором запросы равномерно распределяются между серверами.
|
|
||||||
Другой популярный алгоритм - `весовая балансировка`, где каждому серверу присваивается определенный вес, отражающий его
|
|
||||||
производительность. Также существуют алгоритмы, основанные на отслеживании нагрузки серверов и их доступности, такие как
|
|
||||||
алгоритмы `Least Connection` и `IP Hashing`.
|
|
||||||
|
|
||||||
Открытые технологии для балансировки нагрузки включают в себя программное обеспечение, такое как `Nginx`,
|
|
||||||
`Apache HTTP Server` и `HAProxy`. Эти инструменты обладают гибкими настройками и могут быть использованы для распределения
|
|
||||||
нагрузки между серверами.
|
|
||||||
|
|
||||||
Балансировка нагрузки также играет важную роль при работе с базами данных. Она может быть реализована с помощью таких
|
|
||||||
методов, как `горизонтальное` и `вертикальное масштабирование`. `Горизонтальное масштабирование` предполагает распределение
|
|
||||||
данных между несколькими серверами, а `вертикальное масштабирование` - увеличение ресурсов одного сервера.
|
|
||||||
|
|
||||||
`Реверс-прокси` - это еще один элемент балансировки нагрузки, который используется для распределения запросов между
|
|
||||||
серверами. Он выступает в качестве посредника между клиентами и серверами, принимает запросы и направляет их на наиболее
|
|
||||||
подходящий сервер. Реверс-прокси также может выполнять функции кэширования и обеспечивать безопасность системы.
|
|
||||||
|
|
||||||
Балансировка нагрузки является важным инструментом для обеспечения стабильной и эффективной работы информационных
|
|
||||||
систем. Она позволяет распределить нагрузку между ресурсами и повысить производительность системы.
|
|
45
mashkova_margarita_lab_8/README.md
Normal file
45
mashkova_margarita_lab_8/README.md
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
# Лабораторная работа №8
|
||||||
|
## ПИбд-42 Машкова Маргарита
|
||||||
|
## Задание
|
||||||
|
Написать небольшое эссе (буквально несколько абзацев) своими словами на тему "Устройство распределенных систем".
|
||||||
|
А помогут Вам в этом вопросы из списка:
|
||||||
|
|
||||||
|
1. Зачем сложные системы (например, социальная сеть ВКонтакте) пишутся в "распределенном" стиле, где каждое отдельное
|
||||||
|
приложение (или сервис) функционально выполняет только ограниченный спектр задач?
|
||||||
|
2. Для чего были созданы системы оркестрации приложений? Каким образом они упрощают / усложняют разработку и
|
||||||
|
сопровождение распределенных систем?
|
||||||
|
3. Для чего нужны очереди обработки сообщений и что может подразумеваться под сообщениями?
|
||||||
|
4. Какие преимущества и недостатки распределенных приложений существуют на Ваш взгляд?
|
||||||
|
5. Целесообразно ли в сложную распределенную систему внедрять параллельные вычисления? Приведите примеры, когда это
|
||||||
|
действительно нужно, а когда нет.
|
||||||
|
|
||||||
|
## Эссе
|
||||||
|
|
||||||
|
### Устройство распределенных систем
|
||||||
|
|
||||||
|
`Распределенные системы` являются важным компонентом современных информационных технологий. Они обеспечивают
|
||||||
|
масштабируемость, надежность и отказоустойчивость. Однако, их разработка и сопровождение требуют дополнительных усилий и экспертизы.
|
||||||
|
|
||||||
|
Основная причина использования распределенного подхода заключается в масштабируемости и надежности системы.
|
||||||
|
Распределение задач между отдельными компонентами позволяет более эффективно использовать ресурсы и обеспечивает
|
||||||
|
отказоустойчивость. Если одно из приложений перестает работать, остальные могут продолжать свою работу независимо.
|
||||||
|
|
||||||
|
Системы оркестрации приложений были созданы для управления и координации работы распределенных систем.
|
||||||
|
Они упрощают разработку и сопровождение, позволяя разработчикам сосредоточиться на написании кода, а не на сложностях
|
||||||
|
взаимодействия между компонентами. Однако, они также могут усложнить разработку, требуя дополнительных настроек и конфигураций.
|
||||||
|
|
||||||
|
Очереди обработки сообщений являются важной частью распределенных систем. Они используются для передачи и обработки
|
||||||
|
данных между различными компонентами системы. Сообщения могут быть любыми типами данных, от запросов от клиентов до
|
||||||
|
уведомлений и событий. Очереди позволяют асинхронно обрабатывать сообщения, улучшая производительность и отзывчивость системы.
|
||||||
|
|
||||||
|
Распределенные приложения имеют свои преимущества и недостатки. Одним из преимуществ является возможность
|
||||||
|
масштабирования системы для обработки большого количества запросов. Они также более отказоустойчивы, поскольку отказ
|
||||||
|
одного компонента не приведет к полной остановке системы. Однако, разработка и сопровождение распределенных систем может
|
||||||
|
быть более сложным и требует дополнительных знаний и усилий.
|
||||||
|
|
||||||
|
Внедрение параллельных вычислений в сложную распределенную систему может быть целесообразным в определенных случаях.
|
||||||
|
Например, при обработке большого объема данных или выполнении вычислительно интенсивных задач. Однако, в некоторых
|
||||||
|
случаях, например, при работе с небольшими объемами данных или не требующих параллельной обработки задач, внедрение
|
||||||
|
параллельных вычислений может быть излишним и добавить сложности в систему.
|
||||||
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user