Usando o mod_php, cada trabalhador do Apache tem o interpretador inteiro do PHP carregado nele. Como o Apache precisa de um processo de trabalho por solicitação de entrada, você pode acabar rapidamente com centenas de funcionários do Apache em uso, cada um com seu próprio interpretador PHP carregado, consumindo grandes quantidades de memória.
(Observe que isso não é exatamente verdade, worker_mpm
do Apache permite que você atenda a muitos pedidos com um único trabalhador Apache encadeado. No entanto, mesmo em 2009, essa não é a maneira recomendada de implantar o PHP devido a problemas suspeitos de encadeamento com as extensões PHP.)
Usando PHP no modo fast_cgi (usando algo como spawn-fcgi do pacote lighttpd) os seguintes benefícios
- ajusta o número de trabalhadores PHP separadamente do número de conexões de entrada
- permite que você coloque funcionários PHP em um servidor diferente ou dimensione vários servidores sem alterar sua camada da web
- oferece flexibilidade para escolher um servidor da web diferente, como nginx ou lighttpd
- permite que você execute seu aplicativo PHP em um domínio de segurança diferente em seu servidor da web