PHPackages                             cakedc/cakephp-roadrunner - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. cakedc/cakephp-roadrunner

AbandonedCakephp-plugin[CLI &amp; Console](/categories/cli)

cakedc/cakephp-roadrunner
=========================

Roadrunner bridge and worker for CakePHP

1.0.0(1y ago)162142MITPHPPHP ^8.1

Since Mar 12Pushed 1y ago4 watchersCompare

[ Source](https://github.com/CakeDC/cakephp-roadrunner)[ Packagist](https://packagist.org/packages/cakedc/cakephp-roadrunner)[ RSS](/packages/cakedc-cakephp-roadrunner/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (2)Dependencies (7)Versions (4)Used By (0)

Roadrunner for CakePHP
======================

[](#roadrunner-for-cakephp)

[RoadRunner](https://roadrunner.dev/) is a high-performance PHP application server, load-balancer, and process manager written in Golang. Using Roadrunner you can replace php-fpm a long with nginx or apache.

Requirements
------------

[](#requirements)

- CakePHP ^4.4
- PHP ^8.1
- Roadrunner ^2023.1.4

Table of Contents
-----------------

[](#table-of-contents)

- [Install](#install)
- [Sessions](#sessions)
- [Static Assets](#static-assets)

Install
-------

[](#install)

Install via composer:

```
composer require cakedc/cakephp-roadrunner
```

Unlike most CakePHP plugins you won't be needing to load the plugin in your `src/Application.php`.

### Installing Roadrunner

[](#installing-roadrunner)

Roadrunner ships as a single go binary. Download the Roadrunner binary from the [release page](https://github.com/roadrunner-server/roadrunner/releases) and copy the file to your filesystem, for example under `/usr/local/bin/rr` or `/usr/bin/rr`.

If your project uses Docker you can easily add the binary to your Dockerfile:

```
FROM spiralscout/roadrunner:2.12 as roadrunner
COPY --from=roadrunner /usr/bin/rr /usr/bin/rr
```

Be sure to check the Roadrunner documentation for up-to-date [docker images](https://roadrunner.dev/docs/docker-images).

### Configuring Roadrunner

[](#configuring-roadrunner)

In a typical PHP application your webserver forwards `*.php` requests to php-fpm, which in turn calls the CakePHP front controller `webroot/index.php`. With Roadrunner, the worker file gets called by active workers to handle incoming requests to your application.

Create a Roadrunner worker file, or use the [example worker](worker/cakephp-worker.php) provided:

```
cp vendor/cakedc/cakephp-roadrunner/worker/cakephp-worker.php .
```

Next we need to instruct Roadrunner to use our worker a long with a few other configs. Create a [Roadrunner config](https://roadrunner.dev/docs/intro-config) file, or use the [example config](worker/rr.yaml)provided:

```
cp vendor/cakedc/cakephp-roadrunner/worker/rr.yaml .
```

Start the server:

```
/usr/local/bin/rr serve -d -c rr.yaml
```

You should now be able to browse to

Sessions
--------

[](#sessions)

If you need sessions ensure you add the following to your session config in your CakePHP `config/app.php`

```
    'Session' => [
        'defaults' => 'php',
        'ini' => [
            'session.use_trans_sid' => false,
            'session.use_cookies' => false,
            'session.use_only_cookies' => true,
            'session.cache_limiter' => '',
            'session.save_handler' => 'user',
        ],
    ],
```

- Add the session middleware to your `src/Application.php` middleware queue

```
    ->add(new \Relay\Middleware\SessionHeadersHandler())
```

Static Assets
-------------

[](#static-assets)

You'll possibly need to configure a webserver to handle requests, serve static assets etc. Use this sample config virtualhost for nginx:

```
server {
    listen 80;
    server_name example.com;
    root /var/virtual/example.com/webroot;

    location / {
        try_files $uri @backend8080;
    }

    location @backend8080 {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $server_name;
    }
}

```

Roadrunner also supports [serving static assets](https://roadrunner.dev/docs/http-static) natively. Check the [worker/rr.yaml](worker/rr.yaml) file that ships with this project for an example.

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance46

Moderate activity, may be stable

Popularity20

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~2204 days

Total

2

Last Release

416d ago

Major Versions

0.0.1 → 1.0.02025-03-24

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/204531?v=4)[Cake Development Corporation](/maintainers/CakeDC)[@CakeDC](https://github.com/CakeDC)

---

Top Contributors

[![cnizzardini](https://avatars.githubusercontent.com/u/171294?v=4)](https://github.com/cnizzardini "cnizzardini (27 commits)")[![ramondantas-cp](https://avatars.githubusercontent.com/u/156222208?v=4)](https://github.com/ramondantas-cp "ramondantas-cp (26 commits)")[![ekisu](https://avatars.githubusercontent.com/u/5082637?v=4)](https://github.com/ekisu "ekisu (9 commits)")[![steinkel](https://avatars.githubusercontent.com/u/151761?v=4)](https://github.com/steinkel "steinkel (7 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/cakedc-cakephp-roadrunner/health.svg)

```
[![Health](https://phpackages.com/badges/cakedc-cakephp-roadrunner/health.svg)](https://phpackages.com/packages/cakedc-cakephp-roadrunner)
```

###  Alternatives

[wp-cli/wp-cli

WP-CLI framework

5.0k17.2M320](/packages/wp-cli-wp-cli)[shlinkio/shlink

A self-hosted and PHP-based URL shortener application with CLI and REST interfaces

4.8k4.3k](/packages/shlinkio-shlink)[dereuromark/cakephp-ide-helper

CakePHP IdeHelper Plugin to improve auto-completion

1862.1M27](/packages/dereuromark-cakephp-ide-helper)[consolidation/annotated-command

Initialize Symfony Console commands from annotated command class methods.

22569.8M19](/packages/consolidation-annotated-command)[chi-teck/drupal-code-generator

Drupal code generator

26947.8M5](/packages/chi-teck-drupal-code-generator)[seld/cli-prompt

Allows you to prompt for user input on the command line, and optionally hide the characters they type

24725.8M17](/packages/seld-cli-prompt)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
