Бенчмарк 2025: Node.js против конкурентов – кто быстрее?

Онлайн-тренажер Python для начинающих

Изучайте Python легко и без перегрузки теорией. Решайте практические задачи с автоматической проверкой, получайте подсказки на русском языке и пишите код прямо в браузере — без необходимости что-либо устанавливать.

Начать курс

Бенчмарк 2025: JavaScript (Node.js) против конкурентов — кто быстрее?

В 2025 году экосистема бэкенд-разработки стала ещё более конкурентной. JavaScript (Node.js) удерживает позиции благодаря асинхронной модели и огромному комьюнити, но и другие языки не стоят на месте. Мы проанализировали свежие результаты бенчмарков (TechEmpower Round 24, Techempower Web Framework Benchmarks, а также независимые тесты от сообщества) и готовы поделиться ключевыми выводами.

Тесты проводились на идентичных облачных серверах (4 vCPU, 8GB RAM, SSD). Измерялись три ключевых параметра:

  • Requests per second (RPS) — количество запросов в секунду (чистый JSON-сериализатор и простой CRUD).
  • Latency (p99) — задержка в миллисекундах под нагрузкой.
  • Memory footprint — потребление оперативной памяти в мегабайтах.

Результаты: Node.js vs конкуренты

1. Чистый JSON-сериализатор (Hello World + JSON response):

  • Rust (Actix-web): ~1 200 000 RPS — абсолютный лидер по скорости.
  • Go (Fiber): ~850 000 RPS — отличный показатель для production.
  • Node.js (Fastify): ~620 000 RPS — очень достойный результат, особенно учитывая динамическую типизацию.
  • Java (Spring Boot 3 + Virtual Threads): ~400 000 RPS — сильно подтянулась за счёт виртуальных потоков.
  • Python (FastAPI + uvloop): ~120 000 RPS — традиционно самый медленный, но на 40% быстрее, чем в 2023 году.

2. CRUD с базой данных (PostgreSQL, 10 000 записей):

  • Rust (Actix-web + sqlx): ~280 000 RPS — минимальная задержка.
  • Go (Fiber + pgx): ~230 000 RPS.
  • Node.js (Fastify + Prisma): ~180 000 RPS — сильная асинхронная работа с I/O.
  • Java (Spring Boot + R2DBC): ~150 000 RPS.
  • Python (FastAPI + asyncpg): ~45 000 RPS.

Потребление памяти (JSON-бенчмарк, среднее значение):

  • Rust: ~12 MB — минимальный расход.
  • Go: ~18 MB.
  • Node.js: ~35 MB — больше из-за V8 и GC.
  • Java: ~120 MB (с виртуальными потоками — ~90 MB).
  • Python: ~45 MB.

Выводы для разработчиков в 2025 году

  • Node.js остаётся лучшим выбором для I/O-интенсивных приложений (чат-серверы, API-шлюзы, BFF). Скорость разработки и богатая экосистема NPM перевешивают проигрыш Rust/Go в 2-3 раза по RPS.
  • Rust и Go — оптимальны для высоконагруженных микросервисов, где критична каждая миллисекунда и экономия памяти.
  • Python ускорился, но всё ещё в 5 раз медленнее Node.js в чист

Рекомендуем библотеки