Sobes.tech
Назад к задачам
Junior — Senior
34

Улучшение производительности Node.js‑сервиса при высокой нагрузке

Компании, где спрашивали:

OZONOZON
Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Существует Node.js‑приложение, которое:

  1. Принимает запросы от клиентской части;
  2. Выполняет серверный рендеринг страниц (SSR);
  3. Записывает информацию о запросах в консоль; отдельный агент на машине собирает эти сообщения и передаёт их в систему логирования;
  4. При обработке запросов обращается к другим бекенд‑сервисам, собирает полученные данные и отдает их клиенту. Проблема проявляется при большом количестве запросов в секунду: начинается ограничение пропускной способности (throttling). Причина – перегрузка функции console.log(), которая работает синхронно и может блокировать поток выполнения. Требуется предложить способы оптимизации работы сервиса, чтобы избавиться от узкого места, связанного с логированием, и обеспечить стабильную работу под высокой нагрузкой.