4 Punkte von GN⁺ 2024-05-31 | 1 Kommentare | Auf WhatsApp teilen

Vorstellung von FrankenPHP, einem modernen PHP-Anwendungsserver

Was ist FrankenPHP?

  • FrankenPHP ist ein moderner PHP-Anwendungsserver, der in Go geschrieben ist.
  • Er unterstützt HTTP/1.1, HTTP/2 und HTTP/3, indem er den offiziellen PHP-Runner in den Caddy-Webserver integriert.
  • Er bietet die automatische Erstellung und Erneuerung von HTTPS-Zertifikaten (mit Let’s Encrypt oder ZeroSSL).

Hauptfunktionen

  • Mit einem einzigen Befehl lässt sich ein produktionsreifer PHP-Server starten.
  • Es können eigenständige Binärdateien erzeugt werden, mit denen sich PHP-Webanwendungen und Kommandozeilen-Tools ohne Abhängigkeiten ausführen lassen.
  • Gängige PHP-Erweiterungen (OPcache, XDebug usw.) werden standardmäßig unterstützt.

Leistungssteigerung

  • Worker-Modus: Die Anwendung wird einmal gestartet und bleibt dann im Speicher.
  • Einfache Nutzung: Wird standardmäßig von Symfony, API Platform, Laravel usw. unterstützt.
  • Hohe Geschwindigkeit: Bei API-Platform-Apps 3,5-mal schneller als FPM.
  • Effizienz: Nutzt Go-Goroutinen für eine effiziente Performance.
  • Einfache Bereitstellung: Läuft als einzelne Binärdatei und benötigt keine externen Dienste.

Vorteile von FrankenPHP

  • Einfache und schnelle Einrichtung: Es genügt, PHP-Dateien in das Dokumenten-Root zu kopieren.
  • Hohe Leistung: Kombiniert moderne Webserver-Technologien mit einem PHP-Runner für starke Performance.
  • Flexibilität: Auch Apps, die nicht mit dem Worker-Modus kompatibel sind, können unverändert betrieben werden.

Meinung von GN⁺

  • Interessanter Punkt: FrankenPHP kann die Leistung von PHP-Anwendungen durch den Einsatz moderner Webserver-Technologien deutlich verbessern.
  • Zu beachten bei der Einführung: Kompatibilitätsfragen mit bestehenden PHP-Server-Umgebungen sollten vorab geprüft werden.
  • Kritische Sicht: Die Einführung neuer Technologien kann mit einer Lernkurve und anfänglichen Einrichtungskosten verbunden sein.
  • Empfohlene Alternativen: Auch PHP-Server wie RoadRunner oder Swoole mit ähnlichen Funktionen sind einen Blick wert.
  • Vor- und Nachteile der Technologiewahl: Leistungsgewinn und einfache Bereitstellung sind klare Pluspunkte, doch Risiken neuer Technologien und Integrationsfragen mit bestehenden Systemen sollten sorgfältig abgewogen werden.

1 Kommentare

 
GN⁺ 2024-05-31
Hacker-News-Kommentare
  • Ich habe seit 10 Jahren kein PHP mehr entwickelt, aber diese Landingpage hätte mich fast zu PHP zurückgebracht: Design, Farben und Animationen sind sauber, und das Nutzenversprechen wird gut hervorgehoben. Wirkt wie ein guter Weg, um ein kleines Projekt zu starten.

  • Langjähriger C#-Entwickler, nutzt aktuell hauptsächlich PHP8: PHP8 ist eine großartige Sprache, um Arbeit schnell zu erledigen. Diese Richtung ist besser als LAMP.

  • Ich frage mich, wie die Ergebnisse in den TechEmpower-Benchmarks ausfallen: Der aktuelle Status ist "nicht abgeschlossen" und liegt ganz unten.

  • Ich nutze den integrierten Webserver von PHP häufig während der Entwicklung: Er ist langsam, läuft Single-Threaded und ist nicht für Produktionsumgebungen geeignet. FrankenPHP wirkt vielversprechend, aber das Problem begrenzter Kerne/Threads besteht weiterhin. Das Docker-Image sieht vielversprechend aus.

  • Ich habe FrankenPHP ausprobiert, aber es ist sehr langsam: Die Dokumentation ist unzureichend, und die Leistung bleibt hinter den Erwartungen zurück. Es wird behauptet, 3,5-mal schneller als FPM zu sein, aber in der Praxis erreicht es nicht einmal 1 % dieser Leistung.

  • FrankenPHP hat Performance-Probleme: Trotzdem ist es ein sehr vielversprechendes Projekt.

  • Verwandter Link: FrankenPHP, eine Einführung in einen in Go geschriebenen PHP-App-Server.

  • Wie man einen Docker-Container baut: Erläuterung, wie man mit Docker-Befehlen ein neues Debian in den benötigten Container verwandelt.

  • WordPress-Benchmark mit FrankenPHP und Apache Mod-PHP ausprobiert: Ich konnte keinen Vorteil von FrankenPHP feststellen. Getestet wurde in Docker; ich müsste noch tiefer einsteigen.

  • Ich freue mich, dieses Projekt auf der HN-Startseite zu sehen: Es fühlt sich so an, als hätte die nicht mit FPM geteilte Architektur gleichzeitig zum Erfolg von PHP und zu seinen Grenzen beigetragen.