v0.10.0ознакомительная версия

Многопоточный сервер приложений PHP для cloud-native инфраструктуры

Прямая замена связки nginx + PHP-FPM — один бинарный файл на Rust, который держит приложение загруженным между запросами, обеспечивая низкую задержку, высокую конкурентность, а также встроенные метрики и трассировку.

БЫСТРЫЙ СТАРТ

Две строки в Dockerfile

Скопируйте приложение в образ и запустите его. TLS, сжатие, ограничение частоты запросов, метрики, проверки работоспособности и структурированные логи настраиваются через переменные окружения.

Полное руководство по быстрому старту →
Dockerfile
FROM ghcr.io/oxphp/oxphp:0.10.0 COPY --chown=www-data:www-data . /var/www/html/public
$ docker build -t my-app . && docker run -p 80:80 my-app
ВОЗМОЖНОСТИ

Один бинарный файл заменяет весь стек

Все возможности →
01
Режим воркеров

Постоянные процессы PHP остаются активными между запросами — автозагрузчики, контейнеры и соединения с БД инициализируются один раз.

02
Мультиплексирование файберов

Каждый воркер обрабатывает несколько конкурентных запросов с помощью файберов PHP 8.4; вызовы sleep и await уступают управление вместо блокировки.

03
Асинхронные промисы

Отправляйте замыкания в выделенный пул потоков с помощью примитивов await, race и any — настоящее параллельное выполнение.

04
Разделяемое состояние

Счётчики, атомики, каналы, отображения (maps) и пулы, разделяемые между воркерами — без сетевых обращений к Redis, операции за микросекунды.

05
Наблюдаемость без настройки

Метрики Prometheus, трассы OpenTelemetry, автоматическое APM-инструментирование PDO, cURL и Redis — без изменений в коде.

06
Встроенный профилировщик

Профили для каждого запроса в форматах xhprof, speedscope, pprof и FlameGraph — запускаются по заголовку, cookie или через сэмплирование.

ПОЧЕМУ OXPHP

В сравнении с альтернативами

nginx+FPM
FrankenPHP
RoadRunner
OxPHP
Поддерживаемые версии PHP
8.2–8.5
8.2–8.5
8.1–8.5
8.4 и 8.5
Язык
C
Go + C
Go
Rust + C
TLS 1.3
✓ (rustls)
Постоянное состояние воркеров
Противодавление (backpressure) / HTTP 529
вручную
встроено
Метрики Prometheus
плагин
встроено (Caddy admin)
встроенный плагин
встроено
Структурированные JSON-логи
через log_format
встроено
WebSocket-сервер
✓ (проксирование)
✓ (проксирование)
✓ (плагин centrifuge)
Обратный прокси / upstream
✓ (полнофункциональный)
✓ (Caddy)
Нативная установка (без Docker)
apt/yum/brew/port
brew, статический бинарник
brew, бинарник
Платформы (среда выполнения)
Linux/BSD/Mac
Linux/Mac/Win
Linux/Mac/Win
только Linux (glibc/musl)
Лицензия
BSD-2 / PHP License
MIT
MIT
AGPL-3.0
Возраст / опыт в продакшене
20+ лет
3+ лет
7+ лет
<1 года

OxPHP находится в активной разработке и пока не готов к продакшену — он подходит для ознакомления, staging-окружений и ранних пользователей. Полное сравнение — в документации.