Бенчмарк 2025: PHP и конкуренты — кто быстрее в вебе?

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

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

Начать курс

Бенчмарк 2025: PHP vs конкуренты — кто правит вебом?

В 2025 году мир веб-разработки продолжает меняться, но старый добрый PHP не сдаёт позиций. Напротив, с выходом PHP 8.4, который принёс улучшенный JIT-компилятор и оптимизации памяти, сообщество вновь заговорило о производительности. Мы проанализировали свежие независимые бенчмарки (TechEmpower, Web Framework Benchmarks, а также тесты от сообщества PHP) и сравнили PHP с основными конкурентами: Python (Django/FastAPI), JavaScript (Node.js/Express), Go (Gin) и Java (Spring Boot).

Методология тестирования

  • Платформа: Linux (Ubuntu 24.04), 8 ядер CPU, 16 ГБ RAM, SSD NVMe.
  • Сценарии: "Hello World" (чистый запрос), JSON-сериализация, работа с PostgreSQL (10 000 записей), рендеринг шаблонов.
  • Инструменты: wrk2 для нагрузки, 1000 concurrent connections, длительность теста — 60 секунд.
  • Версии: PHP 8.4 (с JIT), Python 3.13, Node.js 22, Go 1.23, Java 21.

Результаты: скорость запросов (req/s)

  • PHP 8.4 (Laravel Octane + Swoole): 285 000 req/s — впечатляющий скачок благодаря асинхронному режиму и JIT.
  • Go (Gin): 320 000 req/s — традиционный лидер по сырой производительности.
  • Java (Spring Boot + Virtual Threads): 310 000 req/s — виртуальные потоки догоняют Go.
  • Node.js (Express): 240 000 req/s — стабильно, но без прорыва.
  • Python (FastAPI + Uvicorn): 140 000 req/s — асинхронность помогает, но Python всё ещё медленнее.

Работа с JSON и базой данных

В тесте на сериализацию JSON (1000 вложенных объектов) PHP 8.4 показал 180 000 операций/сек, что на 15% быстрее Node.js и на 40% быстрее Python. Однако Go и Java обошли PHP на 20-25% — здесь сказывается нативная компиляция. При работе с PostgreSQL (CRUD-операции) PHP с PDO и асинхронным драйвером (Swoole) выдал 95 000 транзакций/сек, уступив только Go (110 000) и Java (105 000). Python отстал почти в 2 раза — 52 000 транзакций/сек.

Потребление памяти

PHP 8.4 удивил: при пиковой нагрузке среднее потребление RAM составило 120 МБ на процесс, что в 1.5 раза меньше, чем у Node.js, и в 3 раза меньше, чем у Java. Go остаётся рекордсменом (80 МБ), но PHP значительно сократил разрыв. Python, напротив, "съел" 200+ МБ.

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

Бенчмарк 2025 года показывает: PHP — это не "старый язык для форумов". С версией 8.4 и современными инструментами (Octane, Swoole, FrankenPHP) он вплотную приблизился к Go и Java по производительности, особенно в веб-сценариях с высокой нагрузкой. При этом PHP остаётся одним из самых простых в освоении и имеет гигантскую экосистему (WordPress, Laravel, Symfony). Если ваш

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