Проверьте предположение
Сначала предскажите результат, потом измените параметры. Эти модели показывают отдельные зависимости; производительность реального сервера нужно измерять отдельно.
Предскажите результат сбоя
Выберите сценарий и способ обработки. Запишите прогноз не короче 20 символов: что увидит клиент и что останется в данных? Изменение сценария сбрасывает опыт.
План опыта: Сервер выполнит операцию, первый ответ потеряется, клиент повторит тот же запрос K и получит следующий ответ.
0/20 символов. Длина открывает запуск, но не оценивает правильность прогноза.
Состояние после шага 0 из 4
Клиент: Ожидает действия.
Сервер: эффектов 0. Сохранённый ключ K: нет.
Условие пока не нарушено. Один логический запрос должен давать не более одного эффекта. Сейчас: 0.
Журнал
Пока нет событий.
Границы модели: Один клиент, одна база, один ключ K. Во втором варианте ключ и результат хранятся весь опыт. Внешние платежи модель не охватывает.
Оцените нагрузку по действиям пользователей
Сколько запросов в секунду придётся обслуживать на пике? Измените одно допущение и сравни результат.
- Средняя нагрузка
- 23,15 запросов/с
- Пиковая нагрузка
- 115,74 запросов/с
- Исходящий поток на пике
- 0,23 МБ/с
- Объём ответов за сутки
- 4 ГБ
Средний RPS = DAU × запросов на пользователя / 86 400. Пиковый RPS = средний RPS × коэффициент пика. Поток = RPS × размер ответа.
МБ = 1 000 000 байт, ГБ = 1 000 000 000 байт. Считаем одинаковый размер ответов без сжатия, заголовков и повторов. Объём ответов — сетевой трафик за сутки; из него нельзя вывести объём базы данных. Коэффициент пика не умножает суточный объём.
Когда заполнится очередь?
Если запросы приходят быстрее, чем воркеры успевают их обработать, буфер заполняется. Предскажите первую секунду с отказами и проверьте по шагам.
Изменение параметров начинает опыт заново. Один шаг равен одной секунде: воркеры обслуживают старые и новые запросы, оставшиеся занимают буфер, избыток отклоняется. Снимок сделан на границе секунд; незавершённой обработки в этой модели нет.
Прошло 0 из 10 секунд.
- Пришло всего
- 0
- Принято всего
- 0
- Обработано всего
- 0
- Отклонено всего
- 0
- Сейчас в очереди
- 0 из 20
Баланс запросов: 0 принято = 0 обработано + 0 в очереди. Ещё 0 отклонено.
Отказ при заполнении буфера — выбранная политика защиты от перегрузки. Автоматических повторов нет. Буфер увеличивает время до отказов, но не скорость воркеров. Реальные запросы занимают разное время; здесь все скорости постоянны.