Upsun Adds FrankenPHP Support, Highlighting Ongoing Drupal Runtime Discussion
Support for the FrankenPHP runtime has been added to Upsun, introducing a persistent execution model for PHP applications that differs from traditional request-based processing. The update was highlighted in a LinkedIn post by Ricardo Sanz Ante, CTO and founder of Metadrop, who described the platform-level adoption as an indicator of increasing maturity for the technology.
FrankenPHP runs PHP applications as long-lived processes rather than reinitialising the application for each request. Its Go-based core provides native HTTPS, HTTP/3 support, and concurrent execution, while integrating the standard PHP engine to maintain compatibility with existing applications.
This execution model addresses a known limitation in conventional PHP deployments, where each request requires full application bootstrap. In complex systems, including Drupal, repeated bootstrapping can increase response times and resource usage, particularly in high-concurrency or API-driven scenarios.
A long-standing issue in the Drupal core queue tracks efforts to make the system compatible with persistent application servers such as ReactPHP, PHP-PM, Swoole, and FrankenPHP. The issue identifies Drupal’s bootstrap process as resource-intensive and argues that avoiding repeated initialisation could improve performance in dynamic workloads.
The discussion around persistent runtimes in Drupal has focused not only on performance gains but also on architectural constraints. Comments in the issue point to challenges including shared state, synchronous database access, and request-scoped assumptions that complicate the use of long-lived processes.
Upsun’s support for FrankenPHP reflects broader experimentation in the PHP ecosystem around alternative runtime models. For Drupal, however, compatibility with persistent application servers remains an active area of discussion rather than an established deployment path.


