Получить доступ

Сервисом пользуются 10 млн активных пользователей в сутки, каждый совершает около 20 целевых действий. Какой примерно QPS в пике при коэффициенте пиковости 3?

MiddleОценка нагрузки
Ещё спрашивают так:
  • Как оценить QPS по числу пользователей?
  • Сколько секунд в сутках для оценок?
Коротко

10 млн × 20 = 200 млн запросов в сутки; в сутках ≈ 10⁵ секунд → ~2 000 QPS в среднем; пиковость 3 → ~6 000 QPS.

  • 86 400 округляем до 100 000 — точность оценки и так ±50%
  • Пиковый коэффициент 2–5: зависит от географии и суточного ритма
  • Вывод важнее числа: не одна машина, но обычный горизонтально масштабируемый сервис

А ещё Дальше: чтения/записи, размер ответа → трафик, хранение

Так подсказку видит пользователь sotto на живом собеседовании — за пару секунд, пока вы думаете вслух.

Подробно

Цепочка: активные пользователи × действия на пользователя = запросов в сутки. Делим на число секунд в сутках, для оценки — 10⁵ (вместо 86 400: ошибка 15% несущественна). Умножаем на пиковый коэффициент — отношение пиковой нагрузки к средней. Для сервиса в одном часовом поясе с явными утренним и вечерним пиками — 3–5, для глобального — 2.

Расчёт: 10⁷ × 20 = 2 × 10⁸ в сутки; 2 × 10⁸ / 10⁵ = 2 000 QPS; × 3 = 6 000 QPS в пике.

Что из этого следует:

  • 6 000 QPS не держит один экземпляр типичного сервиса с базой, но это несколько–десятки экземпляров за балансировщиком;
  • важно разделить чтение и запись: если 90% — чтение, кэш и реплики решают основную часть, а запись — 600 QPS — выдержит одна хорошая база;
  • трафик: 6 000 × 10 КБ ответа = 60 МБ/с ≈ 0,5 Гбит/с;
  • запас: проектировать на рост и всплески выше среднего пика.

На собеседовании важно проговаривать допущения и округлять смело.

Пример

10 000 000 польз. × 20 действий = 200 000 000 запросов/сутки
200 000 000 / 100 000 с ≈ 2 000 QPS в среднем
× 3 (пик) ≈ 6 000 QPS

Что хотят услышать

  • Цепочка расчёта и округление суток до 10⁵.
  • Пиковый коэффициент и от чего он зависит.
  • Архитектурный вывод из числа.

Частые ошибки

  • Считать точно до единиц, теряя время.
  • Забыть пиковый коэффициент.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✓Около 6 000 запросов в секунду
  • ✗Около 600 запросов в секунду
  • ✗Около 60 000 запросов в секунду
  • ✗Около 200 000 запросов в секунду

Что спросят дальше

  • Что ещё нужно спросить, чтобы оценка стала осмысленной?
  • Как изменится картина при соотношении чтения к записи 100:1?

Разбор темы

Связанные вопросы

Закрытая бета

Подсказки на собеседовании — в реальном времени

sotto слышит вопрос интервьюера и показывает короткий ответ и план, как в блоке «Коротко». Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем