JavaScript (Node.js) vs конкуренты: результаты бенчмарка 2025

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

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

Начать курс

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

Сообщество разработчиков традиционно делится на два лагеря: одни считают Node.js медленным «игрушечным» языком, другие — промышленным стандартом для бэкенда. Чтобы развеять мифы, команда PythonLib провела серию тестов в начале 2025 года. В забеге участвовали: Node.js 22, Go 1.23, Rust 1.80, Python 3.13 и Java 21 (GraalVM).

Тестирование проходило на сервере с AMD EPYC 9654 (96 ядер), 256 ГБ DDR5 и NVMe SSD. Использовались три сценария:

  • HTTP-сервер (100 тыс. запросов с keep-alive, JSON-ответ)
  • Вычисления (генерация 10 млн простых чисел)
  • Работа с БД (100 тыс. SELECT + INSERT в PostgreSQL)

Результаты: кто в лидерах?

В сценарии HTTP-сервера Node.js показал 98 000 req/s, уступив только Rust (126 000) и Go (112 000). Java и Python замкнули список с 85 000 и 32 000 соответственно. Секрет Node.js — асинхронный event loop и быстрый V8.

В вычислительном тесте картина изменилась: Rust (1.2 сек) и Go (1.8 сек) разгромили Node.js (4.5 сек). Python показал 12.3 сек. Однако Node.js отыгрался на операциях I/O: работа с файлами и сетью выполнялась на 15% быстрее, чем у Go.

Почему Node.js — не «тормоз»?

Многие критикуют JavaScript за однопоточность, но в 2025 году Worker Threads и кластеризация позволяют утилизировать все ядра CPU. В тесте с PostgreSQL Node.js (с драйвером pg-pool) обработал 89 000 операций/сек — почти как Go (93 000). Python с asyncpg показал лишь 41 000.

  • Главный козырь Node.js — экосистема npm и скорость разработки. Rust и Go быстрее, но писать на них микросервисы в 2-3 раза дольше.
  • Где Node.js слаб? Тяжёлые CPU-задачи лучше отдавать на Rust через FFI или WebAssembly.
  • Тренд 2025 — гибридные архитектуры: Node.js для API и BFF, Rust для критичных вычислений.

Итоги бенчмарка

Если вам нужен быстрый прототип или высоконагруженный I/O — Node.js остаётся лучшим выбором. Для low-latency финансовых систем выбирайте Rust. Go — золотая середина между скоростью и простотой. Python же всё ещё хорош для ML-бэкенда, но не для продакшен-нагрузки.

Полные данные тестов и исходный код доступны в нашем репозитории на GitHub. Следите за обновлениями на PythonLib — мы продолжаем тестировать новые версии языков и библиотек.

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