18 lines
3.1 KiB
Markdown
18 lines
3.1 KiB
Markdown
# Лабораторная работа №7. Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах.
|
||
|
||
Задачи: Написать небольшое эссе (буквально несколько абзацев) своими словами (пожалуйста не пользуйтесь гуглом :). А помогут Вам в этом вопросы из списка:
|
||
- Какие алгоритмы и методы используются для балансировки нагрузки?
|
||
- Какие открытые технологии существуют для балансировки нагрузки?
|
||
- Как осуществляется балансировка нагрузки на базах данных?
|
||
- Реверс-прокси как один из элементов балансировки нагрузки.
|
||
|
||
# Эссе
|
||
|
||
Балансировка нагрузки существует для распределения нагрузки между различными ресурсами, с целью повышения производительности, отказоустойчивости, предотвращения перегрузок и т.д.
|
||
Можно балансировать нагрузку как в распределенных системах так и монолитных например за счет увеличения количества экземпляров работающей программы.
|
||
С этой целью можно использовать kubernetes, который имеет встроенную функцию балансировки нагрузки, а также можно настроить ее самому. С похожей целью можно исопльзовать docker, но k8s лучше подходит для данных целей.
|
||
|
||
Для балансировки можно использовать прокси, которые поддерживают механизмы балансировки нагрузки, например nginx. Он широко используется для балансировки http и https трафика.
|
||
|
||
Балансировка нагрузки в бд. Знаю мехнанизмы в реляционных базах данных, таких как postgres - шардирование и репликация. Шардирование больше подходит для распределения нагрузки на запись а репликация для распределения нагрузки на чтение. Также репликация подходит для локализации бд в разных частях света пользователям.
|
||
Знаю, что нереляционные базы данных хорошо масшабируются по горизонтали, то есть за счет увеличения количества серверов, но не знаю за счет каких механизмов. |