Skip to content

Нагрузочное тестирование

Использовал k6 для нагрузочного тестирования web-сценариев и оценки рабочих диапазонов нагрузки по RPS, latency и ошибкам.

Что проверял

  • публичную главную страницу;
  • авторизованный сценарий /dashboard;
  • throughput при фиксированной модели нагрузки;
  • http_req_duration, http_req_failed, dropped_iterations;
  • различия между публичными и авторизованными сценариями;
  • соответствие заданным SLA по задержке и ошибкам.

Как был организован тест

  • использовал модель нагрузки constant-arrival-rate: генератор старается держать фиксированную интенсивность входящего потока запросов;
  • задавал thresholds по latency и error rate;
  • запускал отдельные прогоны для публичного и авторизованного сценариев;
  • для авторизованного сценария передавал cookies активной сессии;
  • оформлял результаты в виде baseline-отчёта для последующих оптимизаций.

Результаты и выводы

По итогам прогонов фиксировал рабочие диапазоны нагрузки для конкретной VPS-конфигурации:

  • главная страница стабильно выдерживала около 100 RPS;
  • при 105 RPS оставалась на верхней границе рабочего режима;
  • при 110 RPS начиналась деградация хвостовой задержки, появлялись timeout и dropped_iterations;
  • авторизованный /dashboard оказался заметно тяжелее и уже в диапазоне 15-25 RPS показывал нестабильность по p99+.

Практический опыт

  • писал и запускал k6-сценарии под реальные web-страницы;
  • сравнивал публичные и авторизованные сценарии отдельно;
  • определял предельный RPS, при котором сайт ещё укладывается в SLA;
  • фиксировал результаты как baseline перед дальнейшими оптимизациями.

См. также

Сайт обновлен и проверен: