Skip to content

Powered by Grav

PHP-FPM & performance

PHP-FPM & performance

How BOA sizes and tunes the PHP execution tier: the RAM budget, master and tenant pool workers and memory_limit, the opcache/APCu shares, and the cache stack.

How BOA sizes and tunes the PHP execution tier in production: the box-wide RAM budget, per-pool worker and memory_limit policy (master wwwNN vs plan-based tenant pools), the opcache/APCu shares, the Valkey/Redis cache stack, and the cron/cache failure modes that show up as intermittent plugin errors.

Two pool families exist on every host — CPU-sized master pools and plan-sized tenant pools — and all pools run ondemand, so an idle version pool consumes near-zero regardless of its pm.max_children ceiling. Capacity is governed by _php_budget_for_ram (RAM ladder), _satellite_tune_fpm_config (tenant pools) and _tune_web_server_config (master pools), with a set of _PHP_FPM_* override knobs that pin any computed value.

The pages below cover FPM capacity sizing and the override knobs, the opcache and APCu shares with the read-only samplers, and diagnosing the cache and cron failure modes that surface as intermittent plugin errors on busy hosts.

© 2026 BOA Documentation. All rights reserved.