Что такое горизонтальное масштабирование
Python
Middle
Без компании
Что такое горизонтальное масштабирование
Ответы
Горизонтальное масштабирование (scaling out) — это увеличение производительности системы за счёт добавления новых серверов/узлов, а не за счёт увеличения мощности существующих (вертикальное масштабирование).
**Преимущества:**
- Высокая отказоустойчивость (если один узел падает, другие продолжают работать).
- Гибкость — можно добавлять узлы по мере роста нагрузки.
- Обычно дешевле вертикального масштабирования.
**Пример:**
Веб-приложение разворачивается на нескольких серверах с балансировщиком нагрузки (Nginx, HAProxy).
```
# Пример балансировки запросов между серверами (условно)
servers = ["server1:8000", "server2:8000", "server3:8000"]
current_server = 0
def get_server():
global current_server
server = servers[current_server]
current_server = (current_server + 1) % len(servers)
return server
```
**Недостатки:**
- Сложность синхронизации данных между узлами.
- Требует грамотной архитектуры (например, shared-nothing).