Heim  >  Artikel  >  Backend-Entwicklung  >  Sehen! Der gute „Roadrunner“, der PHP-Programme beschleunigen kann, ist da!

Sehen! Der gute „Roadrunner“, der PHP-Programme beschleunigen kann, ist da!

藏色散人
藏色散人nach vorne
2021-10-15 15:32:233824Durchsuche

Sehen! Der gute „Roadrunner“, der PHP-Programme beschleunigen kann, ist da!

Das Laravel Octane-Paket (https://github.com/laravel/octane) wurde kürzlich veröffentlicht. Es wurde entwickelt, um Laravel Swoole- und RoadRunner-freundlicher zu machen. Wir verwenden seit einiger Zeit RoadRunner anstelle von php-fpm in dev.family und haben beschlossen, unsere Erfahrungen zu teilen und zu verraten, welche Vorteile es hat.

RoadRunner ist ein leistungsstarker, in Go geschriebener Open-Source-PHP-Anwendungsserver. Der Hauptunterschied zu PHP-FPM besteht darin, dass RoadRunner mit dem residenten PHP-Prozess interagiert, im Gegensatz zu PHP-FPM, das bei jeder Anfrage einen neuen PHP-Prozess erstellt und beendet. [Empfohlen: PHP-Video-Tutorial]

Vorteile residenter Prozesse:

  • Keine Zeitverschwendung beim Start
  • Kein Zeitaufwand für die Erstellung von Datenbankverbindungen
  • Die Möglichkeit, den Speichercache direkt im Prozess zu verwenden

Der Nachteil dieses Ansatzes besteht darin, dass er nicht für alle PHP-Anwendungen geeignet ist, da der Code normalerweise mit der Überlegung geschrieben wird, dass der PHP-Prozess nach der Anfrage beendet wird. Daher müssen Sie in der Lage sein, Speicherlecks zu überwachen und den globalen Zustand sorgfältig zu behandeln. Daher dürfen ältere Projekte nicht auf Roadrunner gestartet werden.

Roadrunner verfügt jedoch auch über andere nützliche Funktionen, wie z. B. statisches Feedback, Antwortkomprimierung und Balancing. Die Funktionalität eines typischen Bundles liegt bei Nginx. Wenn Sie PHP Roadrunner verwenden, können Sie die Anwendung (nginx) auch ohne PHP starten.

RoadRunner ist auch einfach erweiterbar. Sie können seine Komponenten für Ihren eigenen Anwendungsserver nutzen und erhalten beispielsweise die Möglichkeit, einige Anfragen direkt auf Go über Websockets abzuwickeln.

RoadRunner selbst ist keine Neuentwicklung, sondern bereits einige Jahre alt. Dank der offiziellen Unterstützung für Laravel Octane können Sie jedoch sicher sein, dass das Framework einsatzbereit ist.

Wir haben einen kleinen Test an einem echten Projekt durchgeführt, um die Geschwindigkeit von PHP-FPM und Roadrunner zu vergleichen. Die Ergebnisse sind wie folgt:

php-fpm:
Klartext: 1150 RPS
Einzelabfrage: 530 RPS

Roadrunner:
Klartext: 2200 RPS
Einzelabfrage: 1600 RPS.

Klartext -- Konstante JSON-Abfragen zurückgeben
einzelne Abfrage – Abfragen, die die Ergebnisse einer einzelnen Abfrage im JSON-Format

an die Datenbank zurückgeben, sind aufgrund der fehlenden Startzeit und der Verwendung einer permanenten Verbindung zur Datenbank deutlich schneller.

Originaladresse: https://dev.to/dev_family/roadrunner-here-and-now-2oo9

Übersetzungsadresse: https://learnku.com/php/t/61447

Das obige ist der detaillierte Inhalt vonSehen! Der gute „Roadrunner“, der PHP-Programme beschleunigen kann, ist da!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:learnku.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen