How FrankenPHP Boosts PHP Performance by 2× with Caddy Integration

FrankenPHP, a Go‑based PHP application server built on Caddy, claims to double web request performance and halve developer/DevOps workload, offering container‑ready deployment, automatic HTTPS, native PHP extensions, in‑memory mode, structured logging, Prometheus metrics, and experimental HTTP/3 support.

21CTO
21CTO
21CTO
How FrankenPHP Boosts PHP Performance by 2× with Caddy Integration

FrankenPHP is a PHP application server written in Go and built on the Caddy web server.

Caddy creator Matt Holt says it can double PHP application performance and cut developer and DevOps workload in half; Caddy has just been updated to version 2.8, which experimentally supports HTTP/3.

The author of FrankenPHP is Kevin Dunglas, a core contributor to both PHP and Go and a maintainer of the popular PHP framework Symfony.

Dunglas combined his cross‑domain expertise to create FrankenPHP, previewed at SymfonyCon in November 2022 and released version 1.0 in December 2023.

FrankenPHP is designed for container deployment, bundles Caddy (also written in Go), and can run PHP applications as a single service. It is open‑source under the MIT license, with code on GitHub.

https://github.com/dunglas/frankenphp

Packaging the PHP runtime with the web server dramatically improves performance.

A benchmark from Dunglas shows a “Hello World” Symfony app handling a web request in an average of 2.53 ms, compared with the typical PHP‑FPM (FastCGI Process Manager) which takes 9.45 ms.

FrankenPHP also automatically generates HTTPS certificates (leveraging Caddy’s support for Let’s Encrypt or ZeroSSL), natively supports PHP extensions such as OPCache and XDebug, and offers an in‑memory mode for faster responses.

Additional features include structured logging, Prometheus metrics and tracing, graceful reloads, and support for popular PHP applications such as WordPress, Symfony, Drupal, Joomla, Laravel, and API Platform.

Matt Holt, an enthusiast, posted on Hacker News that this could “change the web” because PHP powers the majority of sites, noting that performance can nearly double while developer/devops effort is halved.

However, the situation is not simple: WordPress, which accounts for much of PHP’s popularity, does not yet support FrankenPHP’s in‑memory mode, so performance gains are limited to features like 103 Early Hints preloading, which can reduce page‑load latency by about 30%.

Caddy 2.8 is described by its team as “the biggest Caddy update yet,” bringing hundreds of improvements, including experimental HTTP/3 support for proxy backends, updated automatic certificate renewal (including ARI support), and performance enhancements such as default compression of more media types.

Users praise Caddy as an excellent reverse proxy that pioneers automatic certificates and HTTP/3 support.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

performancecontainerizationPHPHTTP/3CaddyFrankenPHP
21CTO
Written by

21CTO

21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.