In the context of WordPress, PHP workers build pages, process scheduled background tasks, and more. Since PHP workers are directly responsible for generating HTML pages to serve to your site’s visitors, they determine how many simultaneous uncached requests your site can handle at any given time.
For example, let’s say your WordPress site is equipped with two PHP workers and no page caching setup. If four requests come to your site at the exact same time, two of those requests will get processed immediately, while the other two will have to wait in the queue until the first two have finished processing.
Here at Kinsta, we use PHP workers as one of the variables for our different plan tiers. For example, Business 1 plans have 4 PHP workers per site, while Enterprise 4 plans have 16.
Although we implement server-level caching, for requests where the cache is bypassed or missed, PHP workers become very important as they have to do work for each request.
Typically we see a lot of uncached requests on ecommerce and community forum sites. Therefore, these sites will require additional PHP workers to ensure every request is processed without delays or timeouts.
If your site is highly optimized or does not have a lot of PHP code (e.g. a complex theme or a lot of WordPress plugins), then processing each request should happen almost instantly. Even with 2 PHP workers and 4 requests, all four requests would be handled very quickly.
Simply put, a PHP worker is a background process on a server that runs PHP code.