diff --git a/senkin_alexander_lab_7/README.md b/senkin_alexander_lab_7/README.md new file mode 100644 index 0000000..5b2d04d --- /dev/null +++ b/senkin_alexander_lab_7/README.md @@ -0,0 +1,18 @@ +# Лабораторная работа №7. Балансировка нагрузки в распределённых системах при помощи открытых технологий на примерах. + +Задачи: Написать небольшое эссе (буквально несколько абзацев) своими словами (пожалуйста не пользуйтесь гуглом :). А помогут Вам в этом вопросы из списка: +- Какие алгоритмы и методы используются для балансировки нагрузки? +- Какие открытые технологии существуют для балансировки нагрузки? +- Как осуществляется балансировка нагрузки на базах данных? +- Реверс-прокси как один из элементов балансировки нагрузки. + +# Эссе + +Балансировка нагрузки существует для распределения нагрузки между различными ресурсами, с целью повышения производительности, отказоустойчивости, предотвращения перегрузок и т.д. +Можно балансировать нагрузку как в распределенных системах так и монолитных например за счет увеличения количества экземпляров работающей программы. +С этой целью можно использовать kubernetes, который имеет встроенную функцию балансировки нагрузки, а также можно настроить ее самому. С похожей целью можно исопльзовать docker, но k8s лучше подходит для данных целей. + +Для балансировки можно использовать прокси, которые поддерживают механизмы балансировки нагрузки, например nginx. Он широко используется для балансировки http и https трафика. + +Балансировка нагрузки в бд. Знаю мехнанизмы в реляционных базах данных, таких как postgres - шардирование и репликация. Шардирование больше подходит для распределения нагрузки на запись а репликация для распределения нагрузки на чтение. Также репликация подходит для локализации бд в разных частях света пользователям. +Знаю, что нереляционные базы данных хорошо масшабируются по горизонтали, то есть за счет увеличения количества серверов, но не знаю за счет каких механизмов. \ No newline at end of file