Я провёл бенчмарки различных серверов и режимов запуска PHP. Что тестировалось:
PHP-FPM + Nginx
FrankenPHP (классический и worker-режим)
Rapira (классический, worker, dispatcher)
OxPHP (классический, worker)
RoadRunner
FreeUnit
Swoole
На каждом сервере было запущено простое приложение на Yii3. Два отдельных эндпоинта и, соответственно, два бенчмарка. Первый — без БД, чистый PHP. Второй реально обращается к PostgreSQL, что ближе к настоящим приложениям.
Некоторые выводы:
Swoole — король производительности! Rapira в режимах dispatcher/worker идёт следом.
FreeUnit отлично подходит, если ваше приложение работает в классическом режиме.
С базой данных разница становится менее заметной. Worker-режим в среднем даёт 2× RPS.
Swoole и Rapira очень эффективны с точки зрения потребления CPU и памяти.

