Back

What do you prefer to use Laravel Octane with and why?

- RoadRunner
- FrankenPHP
- PHP Swoole

1

223

I’d suggest using FrankenPHP with Laravel Octane for several reasons. First and foremost, it’s incredibly fast and efficient, built on top of the reliable Caddy server, which is known for its built-in features like automatic HTTPS and excellent performance out of the box. Unlike other options, FrankenPHP is optimized for modern PHP workflows and takes full advantage of Laravel Octane’s ability to serve requests through a high-performance, event-driven architecture.
FrankenPHP also integrates tightly with the PHP-FPM process, but with added benefits like coroutine support, which can lead to better concurrency handling and reduced latency. This makes it a great choice for applications that require real-time performance and scalability.

1

88

FrankenPHP also allows you to embed your PHP application into it as a static binary, meaning no FPM processes are needed - and you get a huge speed boost!

1

57

In response to @JustSteveKing

We started implementing RoadRunner, but in rough tests the difference from PHP-FPM is small - only 13% speed increase.

But if you watch a recent video by Roman Pronskiy from JetBrains, he has a different result: www.youtube.com/watch?v=ZB129Tjkas8

- php-fpm: 72.18 reqs/s
- frankenphp: 211.28 reqs/s
- roadrunner: 280.51 reqs/s

He posted detailed results in his repository on GitHub:

github.com/pronskiy/ngx-php_laravel?tab=readme-ov-file#benchmark-results

1

73

  • No matching results...
  • Searching...

/ 1000

Maybe from a pure practical point of view, frankenphp is a single process so there's a better chance of caching on multiple levels in the CPUs compared with multiple processes using the CPU.

1

145

Franken I haven't explored yet, unlike RoadRunner. And that was superficial. As far as I understand, Laravel Octane raises several of its processes and each one runs by itself on its own CPU.

By the way, I've read the documentation now and yes, Octane also raises several Workers. By default, their number is equal to the number of CPUs.

But, to talk more in detail, I need to study this topic more. So that's where I'm stopping :)

102