Benchmark 2025: PHP vs concorrentes — quem domina a web?
Em 2025, o mundo do desenvolvimento web continua mudando, mas o bom e velho PHP não perde terreno. Pelo contrário, com o lançamento do PHP 8.4, que trouxe um compilador JIT aprimorado e otimizações de memória, a comunidade voltou a falar sobre desempenho. Analisamos benchmarks independentes recentes (TechEmpower, Web Framework Benchmarks, além de testes da comunidade PHP) e comparamos o PHP com seus principais concorrentes: Python (Django/FastAPI), JavaScript (Node.js/Express), Go (Gin) e Java (Spring Boot).
Metodologia de teste
- Plataforma: Linux (Ubuntu 24.04), 8 núcleos de CPU, 16 GB de RAM, SSD NVMe.
- Cenários: "Hello World" (requisição pura), serialização JSON, operações com PostgreSQL (10 000 registros), renderização de templates.
- Ferramentas: wrk2 para carga, 1000 conexões simultâneas, duração do teste — 60 segundos.
- Versões: PHP 8.4 (com JIT), Python 3.13, Node.js 22, Go 1.23, Java 21.
Resultados: velocidade de requisições (req/s)
- PHP 8.4 (Laravel Octane + Swoole): 285 000 req/s — salto impressionante graças ao modo assíncrono e JIT.
- Go (Gin): 320 000 req/s — líder tradicional em desempenho bruto.
- Java (Spring Boot + Virtual Threads): 310 000 req/s — threads virtuais alcançam o Go.
- Node.js (Express): 240 000 req/s — estável, mas sem avanço.
- Python (FastAPI + Uvicorn): 140 000 req/s — assincronia ajuda, mas Python ainda é mais lento.
Trabalho com JSON e banco de dados
No teste de serialização JSON (1000 objetos aninhados), o PHP 8.4 apresentou 180 000 operações/seg, sendo 15% mais rápido que Node.js e 40% mais rápido que Python. No entanto, Go e Java superaram o PHP em 20-25% — aqui a compilação nativa faz diferença. Ao trabalhar com PostgreSQL (operações CRUD), o PHP com PDO e driver assíncrono (Swoole) entregou 95 000 transações/seg, perdendo apenas para Go (110 000) e Java (105 000). O Python ficou quase 2 vezes atrás — 52 000 transações/seg.
Consumo de memória
O PHP 8.4 surpreendeu: sob carga máxima, o consumo médio de RAM foi de 120 MB por processo, 1,5 vezes menos que Node.js e 3 vezes menos que Java. Go continua sendo o recordista (80 MB), mas o PHP reduziu significativamente a diferença. Python, por outro lado, "consumiu" 200+ MB.
Conclusões para desenvolvedores
O benchmark de 2025 mostra: PHP não é uma "linguagem antiga para fóruns". Com a versão 8.4 e ferramentas modernas (Octane, Swoole, FrankenPHP), ele se aproximou bastante de Go e Java em desempenho, especialmente em cenários web de alta carga. Além disso, o PHP continua sendo uma das linguagens mais fáceis de aprender e possui um ecossistema gigantesco (WordPress, Laravel, Symfony). Se o seu