Оценки «на салфетке»: QPS, объём данных, хранилище
Грубая оценка за минуту важнее точной за час: она показывает, упрётся ли система и во что.
Оценка «на салфетке» (back-of-the-envelope) — быстрый расчёт нагрузки и объёмов по порядку величины, чтобы понять, какие компоненты вообще нужны.
Цель — не точность до запятой, а порядок величины. 1000 QPS или 1 000 000 QPS — это разные архитектуры. Округляйте смело: в году ≈ 31,5 млн секунд, но для прикидок берут 10⁵ секунд в сутки (точнее 86 400) и считают в уме.
Шаг 1. Считаем QPS
QPS (queries per second) — запросов в секунду. Идём от числа активных пользователей. Пусть 10 млн DAU, каждый делает 20 действий в день:
Запросов в сутки = 10 000 000 * 20 = 200 000 000
Секунд в сутках ≈ 86 400 (округляем до 10^5)
Средний QPS = 200 000 000 / 100 000 = 2 000 QPS
Но трафик неравномерен. Пиковый QPS обычно в 2–3 раза выше среднего, поэтому проектируем под ~5 000 QPS. Это уже подсказывает: один сервер не справится, нужен балансировщик и несколько инстансов.
Шаг 2. Степени двойки и единицы данных
Чтобы прикидывать объёмы, держите в голове таблицу степеней двойки. Она же — шпаргалка по размерам данных.
| Степень | Примерно | Имя |
| 2¹⁰ | тысяча (10³) | 1 KB |
| 2²⁰ | миллион (10⁶) | 1 MB |
| 2³⁰ | миллиард (10⁹) | 1 GB |
| 2⁴⁰ | триллион (10¹²) | 1 TB |
| 2⁵⁰ | 10¹⁵ | 1 PB |
Шаг 3. Объём хранилища
Пример: сервис пишет 500 млн новых записей в сутки, каждая ≈ 1 KB. Сколько хранилища нужно на 5 лет?
В сутки = 500 000 000 * 1 KB = 500 GB / день
В год = 500 GB * 365 ≈ 180 TB / год
За 5 лет ≈ 900 TB ≈ 1 PB
Вывод мгновенный: на одном диске это не поместится — нужно шардирование и план роста. Заодно прикиньте репликацию: с тройной репликацией умножайте на 3.
Шаг 4. Пропускная способность (полоса)
Если каждый из 5000 QPS отдаёт ответ по 10 KB:
Полоса = 5 000 * 10 KB = 50 MB/с ≈ 400 Mbit/с
Это нагрузка на сеть и подсказка, что тяжёлую статику (картинки, видео) стоит вынести на CDN, а не гонять через свои серверы.
Удобные числа для запоминания
| Величина | Округление для счёта в уме |
| Секунд в сутках | ~10⁵ (86 400) |
| Секунд в месяце | ~2,5 млн |
| Чтение из памяти | ~100 нс |
| Чтение с SSD | ~100 мкс (в 1000 раз медленнее памяти) |
| Round-trip внутри ЦОД | ~0,5 мс |
| Round-trip между континентами | ~100–150 мс |
Итог
- QPS считают от DAU; пиковый берут в 2–3 раза выше среднего.
- Степени двойки и «10⁵ секунд в сутки» позволяют считать объёмы в уме.
- Оценки сразу подсказывают: нужен ли шардинг, CDN, сколько серверов.