RoadRunner is a high-performance application server and process manager designed to serve PHP applications using a persistent worker model. It eliminates bootload overhead and initialization time by keeping application processes alive between requests, acting as a protocol-agnostic proxy that routes traffic to a pool of supervised workers.
The server is built with a plugin-based modular architecture, allowing it to be extended with custom Go plugins and compiled into tailored binaries. It distinguishes itself by providing a unified execution model for a wide array of communication protocols, including HTTP/3, gRPC, WebSockets, TCP, and FastCGI, all managed through a shared inter-process communication system.
Beyond web serving, the project covers asynchronous job processing with integration for multiple message brokers, stateful workflow orchestration via an external engine, and distributed key-value caching. It also includes a comprehensive observability suite based on the OpenTelemetry standard for metrics, logging, and distributed tracing.
The server is configured via YAML or JSON files and supports environment variable injection and command-line overrides for runtime management.