1.912 gegen 393. Diese Zahl steht nicht für ein Fussballergebnis, sondern für Requests pro Sekunde in einem Benchmark, der die Backend-Welt aufhorchen lässt. Ein neuer PHP Swoole Benchmark von phpbenchlab.com, veröffentlicht am 3. Oktober 2026, zeigt: Bei realistischer Datenbank-Latenz schlägt PHP 8.5 mit der Swoole-Erweiterung sowohl Node.js 22.x als auch Go 1.24.x deutlich. Der Bericht wurde am selben Tag unabhängig durch TheNextGenTechInsider bestätigt.
Für viele Entwickler ist das eine Überraschung. PHP gilt seit Jahren als die Sprache für klassische Webseiten, während Node.js und Go als die Werkzeuge für hochperformante, nebenläufige Systeme angesehen werden. Der neue Benchmark stellt diese Annahme infrage, zumindest für einen ganz bestimmten Anwendungsfall: Workloads, die stark auf Datenbank-I/O warten.
Inhaltsverzeichnis
Key Takeaways
- Der PHP Swoole Benchmark von phpbenchlab.com (3. Oktober 2026) zeigt PHP 8.5 mit Swoole 6.2.1 bei 50ms Datenbank-Latenz mit 1.912 Requests/Sekunde deutlich vor Node.js, Go, Python und klassischem PHP-FPM.
- Bei 200ms Latenz fällt der Vorsprung noch deutlicher aus: PHP mit Swoole erreicht 495 RPS, Go nur 108 RPS, alle anderen getesteten Stacks liegen bei rund 99 RPS.
- Grund ist das Coroutine-Modell von Swoole: Ein Worker kann bei I/O-Wartezeit die Kontrolle abgeben (yield) und parallel weitere Anfragen bearbeiten, während PHP-FPM synchron blockiert.
- Dieser I/O-Benchmark ist nicht zu verwechseln mit einem früheren CPU-intensiven Test von phpbenchlab.com aus demselben Jahr, bei dem Go bei reiner Rechenlast klar dominierte.
- Parallel zur Benchmark-Veröffentlichung hat die PHP-Foundation PHP 8.6.0 RC2 freigegeben, nachdem RC1 wegen eines Paketierungsfehlers ausgelassen wurde, ein Zeichen für ein aktives PHP-Ökosystem.
Was zeigt der neue PHP Swoole Benchmark von phpbenchlab.com
Der Test wurde unter kontrollierten, realistischen Bedingungen durchgeführt. Die Testumgebung bestand aus einem Ubuntu-22.04-Server mit 4 vCPUs und 8 GB RAM, als Datenbank-Engine kam MySQL 8.4 zum Einsatz. Um reale Datenbank-Wartezeiten zu simulieren, nutzte das Team SELECT SLEEP()-Abfragen mit zwei Latenzstufen: 50 Millisekunden und 200 Millisekunden. Diese Werte entsprechen typischen Szenarien, in denen ein Backend auf eine langsame Abfrage, einen externen Microservice oder eine überlastete Datenbank wartet.
Verglichen wurden fünf Setups:
- PHP 8.5 mit Swoole 6.2.1 (Coroutines, Connection Pooling)
- Node.js 22.x (Connection-Pool-Größe 20)
- Go 1.24.x (Connection-Pool-Größe 20)
- Python 3.12.x
- Klassisches PHP-FPM als Referenz für die traditionelle PHP-Architektur
Diese Auswahl ist bewusst breit gefasst, weil sie sowohl moderne Event-Loop-Sprachen (Node.js) als auch kompilierte, nebenläufige Sprachen (Go) sowie die klassische PHP-Variante abdeckt. Genau dieser Vergleich macht den PHP Swoole Benchmark für Architekturentscheidungen so relevant.
PHP Swoole Benchmark im Detail: Ergebnisse bei 50ms und 200ms Latenz
Die Zahlen sprechen eine klare Sprache. Bei einer Datenbank-Antwortzeit von 50 Millisekunden, ein durchaus alltäglicher Wert für eine leicht belastete Datenbank, ergab sich folgendes Bild:
| Stack | Requests/Sekunde | P99-Latenz |
|---|---|---|
| PHP 8.5 + Swoole | 1.912 | 62 ms |
| Node.js 22.x | 393 | 256 ms |
| Go 1.24.x | 394 | 914 ms |
| Python 3.12.x | 393 | 461 ms |
| PHP-FPM (klassisch) | 388 | 264 ms |
PHP mit Swoole erreicht fast das Fünffache der Requests pro Sekunde im Vergleich zu den übrigen Stacks, bei gleichzeitig deutlich niedrigerer P99-Latenz. Besonders auffällig: Go, das für seine Nebenläufigkeit bekannt ist, liefert hier mit 914 Millisekunden P99-Latenz den schlechtesten Wert aller getesteten Umgebungen.
Bei einer härteren Latenzstufe von 200 Millisekunden, etwa representativ für eine stark ausgelastete Datenbank oder einen langsamen externen Dienst, verschärft sich das Bild weiter:
| Stack | Requests/Sekunde | P99-Latenz |
|---|---|---|
| PHP 8.5 + Swoole | 495 | 208 ms |
| Go 1.24.x | 108 | 2.001 ms |
| Node.js 22.x | ca. 99 | nicht separat berichtet |
| Python 3.12.x | ca. 99 | nicht separat berichtet |
| PHP-FPM (klassisch) | ca. 99 | nicht separat berichtet |
Hier liegt PHP mit Swoole fast beim Fünffachen der Leistung von Go und etwa beim Fünffachen aller anderen Stacks. Die P99-Latenz von Go schiesst auf über zwei Sekunden hoch, während Swoole stabile 208 Millisekunden hält, nahezu identisch mit der tatsächlichen Datenbank-Antwortzeit.
"Ein einzelner Worker kann mehrere gleichzeitige Anfragen verwalten, solange er bei I/O-Wartezeiten die Kontrolle abgeben kann.", zentrale Erklärung des phpbenchlab.com-Reports zum PHP Swoole Benchmark
Warum schneidet PHP mit Swoole so viel besser ab als Node.js und Go
Die Erklärung liegt im Architekturmodell. Swoole arbeitet mit einem Coroutine-basierten Ansatz. Sobald eine Anfrage auf eine Datenbankantwort wartet, gibt die Coroutine die Kontrolle an den Worker-Prozess zurück (ein sogenanntes "yield"). Der Worker kann diese Wartezeit nutzen, um eine oder mehrere andere Anfragen zu bearbeiten, statt untätig zu blockieren. Erst wenn die Datenbank antwortet, wird die ursprüngliche Coroutine fortgesetzt. Wer generell zwischen PHP und Node.js als Backend-Technologie abwägen möchte, findet einen tieferen Vergleich in unserem Artikel PHP vs. Node.js im Jahr 2026.
Dieses Modell unterscheidet sich fundamental von klassischem PHP-FPM, das synchron und blockierend arbeitet: Ein Worker-Prozess ist für die gesamte Dauer einer Anfrage, inklusive aller Wartezeiten auf die Datenbank, belegt. Genau das erklärt, warum PHP-FPM im Benchmark bei beiden Latenzstufen mit den anderen synchronen beziehungsweise weniger effizient poolenden Stacks auf ähnlichem, niedrigem Niveau liegt.
Zusätzlich kommt bei PHP 8.5 mit Swoole 6.2.1 Connection Pooling zum Einsatz. Datenbankverbindungen werden wiederverwendet statt ständig neu aufgebaut, was zusätzliche Latenz einspart. Node.js und Go nutzten im Test ebenfalls einen Connection-Pool mit der Größe 20, trotzdem konnten sie nicht annähernd an die Werte von Swoole heranreichen, weil ihr jeweiliges Nebenläufigkeitsmodell unter dieser spezifischen I/O-Last offenbar weniger effizient greift als das Coroutine-Modell von Swoole.
Wichtig ist: Die vorliegenden Quellen begründen die Ergebnisse ausschliesslich mit dem Coroutine-Prinzip und dem Yield-Verhalten bei I/O-Wartezeiten. Weitergehende Spekulationen über interne Implementierungsdetails der Konkurrenzsprachen lassen sich aus dem Bericht nicht ableiten.
Einordnung: PHP Swoole Benchmark nicht mit dem CPU-Test verwechseln
An dieser Stelle ist eine klare Abgrenzung notwendig. phpbenchlab.com hatte im selben Jahr bereits einen frühen, CPU-intensiven Benchmark veröffentlicht. In jenem separaten Test dominierte Go deutlich, weil es sich dort um reine Rechenlast ohne nennenswerte I/O-Wartezeiten handelte, ein Szenario, in dem kompilierte Sprachen wie Go traditionell stärker sind.
Der aktuelle PHP Swoole Benchmark vom 3. Oktober 2026 ist ein völlig anderer Test: Er misst explizit Datenbank-I/O-Latenz, nicht Rechenleistung. Beide Benchmarks beantworten unterschiedliche Fragen und sollten nicht pauschal zusammengefasst werden. Wer eine Architekturentscheidung trifft, sollte also prüfen, ob die eigene Anwendung primär CPU-gebunden (zum Beispiel Bildverarbeitung, komplexe Berechnungen) oder I/O-gebunden (zum Beispiel typische Web-APIs mit Datenbankzugriffen) ist.
PHP-Ökosystem in Bewegung: PHP 8.6.0 RC2 und aktive Weiterentwicklung
Der Benchmark fällt in eine Phase, in der sich im PHP-Ökosystem viel bewegt. Die PHP-Foundation hat vor kurzem PHP 8.6.0 RC2 veröffentlicht, nachdem RC1 aufgrund eines Paketierungsfehlers übersprungen werden musste. Für Entwickler ist das ein Signal: PHP wird aktiv weiterentwickelt, Fehler werden transparent kommuniziert und schnell korrigiert, statt verschwiegen zu werden.
Diese Dynamik passt zum Gesamtbild, das der aktuelle PHP Swoole Benchmark zeichnet. PHP ist längst nicht mehr nur die Sprache für klassische, synchrone Webanwendungen. Mit Erweiterungen wie Swoole positioniert sich PHP zunehmend auch im Bereich hochperformanter, nebenläufiger Backend-Systeme, einem Feld, das lange von Node.js und Go dominiert wurde.
Was bedeutet das für Backend-Entwickler
Für PHP-Entwickler, die vor einer Architekturentscheidung stehen, liefert der Benchmark konkrete Anhaltspunkte:
- I/O-intensive APIs (viele Datenbankabfragen, externe Service-Calls) profitieren besonders stark vom Coroutine-Modell von Swoole.
- Connection Pooling ist ein zentraler Baustein der gemessenen Performance und sollte bei einer Swoole-Migration von Anfang an mitgedacht werden.
- Klassisches PHP-FPM bleibt für viele Standardanwendungen ausreichend, zeigt aber bei hoher I/O-Last und gleichzeitig vielen parallelen Anfragen klare Grenzen.
- Go und Node.js sind nicht grundsätzlich schlechter, schneiden aber in diesem spezifischen I/O-Szenario mit den gewählten Pool-Konfigurationen schwächer ab als Swoole.
- Vor einer Migration empfiehlt sich ein eigener, auf die konkrete Produktionslast zugeschnittener Test, da Benchmark-Ergebnisse immer von der jeweiligen Testumgebung abhängen.
Fazit
Der PHP Swoole Benchmark von phpbenchlab.com, bestätigt durch TheNextGenTechInsider, liefert ein deutliches und gut belegtes Ergebnis: Bei realistischer Datenbank-I/O-Latenz schlägt PHP 8.5 mit Swoole 6.2.1 sowohl Node.js als auch Go und Python klar, sowohl bei Requests pro Sekunde als auch bei der P99-Latenz. Der Grund liegt im Coroutine-Modell, das Wartezeiten effizient nutzt, statt Worker-Prozesse blockieren zu lassen.
Für Backend-Entwickler bedeutet das: Wer stark I/O-gebundene PHP-Anwendungen betreibt, sollte Swoole als ernstzunehmende Option für mehr Durchsatz und niedrigere Latenz prüfen. Gleichzeitig gilt es, den Unterschied zum früheren CPU-Benchmark im Auge zu behalten und die eigene Workload-Charakteristik, I/O-gebunden oder CPU-gebunden, realistisch einzuschätzen, bevor eine Architekturentscheidung getroffen wird. Ein eigener, produktionsnaher Test bleibt der sicherste nächste Schritt, um die hier gezeigten Werte für die eigene Anwendung zu verifizieren.





