# 06 — Масштабирование облачных приложений

← [Главная](../README.md)

## Цель раздела

Познакомиться с **введением в масштабирование**: вертикальное и горизонтальное, stateless vs stateful, балансировка нагрузки и кэширование — без глубокого capacity planning, но с рабочими схемами.

## Предварительно

- [05 — Безопасность](../05-bezopasnost/README.md)
- [NFR и SLA](../03-proektirovanie/nfr-i-sla.md)

## Время

**10–15 часов** на весь раздел

---

## Страницы раздела

| № | Тема | Время | Ссылка |
|---|------|-------|--------|
| 1 | Вертикальное и горизонтальное | 3–4 ч | [vertikalnoe-i-gorizontalnoe.md](vertikalnoe-i-gorizontalnoe.md) |
| 2 | Stateless vs stateful | 3–4 ч | [stateless-vs-stateful.md](stateless-vs-stateful.md) |
| 3 | Балансировка и кэш | 3–5 ч | [balansirovka-i-kesh.md](balansirovka-i-kesh.md) |

```mermaid
flowchart LR
  Load[Рост нагрузки] --> V[Вертикаль?]
  V -->|лимит| H[Горизонталь]
  H --> SL[Stateless API]
  SL --> LB[Load Balancer]
  LB --> Cache[Кэш]
```

---

## Контрольная точка КТ-3

Список **5 узких мест** при росте с 100 до 10 000 пользователей и **мера** для каждого (из [карты пути](../00-karta-puti/README.md)).

---

## Когда масштабировать

| Сигнал | Действие |
|--------|----------|
| CPU API > 70% стабильно | Scale out/in |
| p95 latency > NFR | Профиль, кэш, реплики read |
| Очередь растёт | Больше workers |
| Connection pool exhausted | Больше API или pgbouncer |

**Не** масштабируйте «на вырост» без метрик — лишние расходы.

---

## Самопроверка раздела

1. Чем scale up отличается от scale out?  
2. Почему stateful API мешает горизонтали?  
3. Где ставить кэш — до или после БД?

---

## Дальше

→ [Вертикальное и горизонтальное масштабирование](vertikalnoe-i-gorizontalnoe.md)
