Os PHP Workers processam o código PHP de um site. Isso inclui construir páginas, processar tarefas em segundo plano, consultar o banco de dados, etc.
Uma maneira de pensar em PHP Workers é como empregados de uma loja. Cada worker só pode lidar com um pedido de cada vez. Se houver mais clientes do que trabalhadores, esses clientes (processos) têm que fazer fila e esperar pelo próximo worker disponível para atender à sua solicitação.
Os PHP Workers entram em jogo quando um site não consegue ou não tem capacidade para armazenar em cache a maior parte do seu conteúdo. Quanto mais dinâmico o site for, mais PHP Workers ele provavelmente precisará. O conteúdo em cache não requer PHP Workers, eles são necessários apenas quando o site precisa consultar o banco de dados para obter ou alterar informações.
WordPress e PHP Workers
Uma solicitação sem cache em um site WordPress geralmente é algo parecido com isto:
- Um visitante acessa uma página ou realiza uma ação em uma página (por exemplo, adicionando algo ao carrinho, enviando um formulário, etc.).
- O servidor web (Nginx aqui na Kinsta) recebe essa solicitação.
- Nginx encaminha a solicitação para o PHP.
- PHP consulta o banco de dados MySQL e obtém as informações necessárias ou faz quaisquer atualizações necessárias.
- PHP, em seguida, usa os arquivos PHP do seu tema (e quaisquer arquivos de plugin, se aplicável) para gerar uma página HTML.
- PHP entrega a página HTML renderizada de volta ao servidor web.
- A página é servida para o visitante.
O processo descrito acima apresenta o Passo 4 como sendo o mais exigente em termos de tempo e recursos (CPU e RAM). Um site bem otimizado, com código PHP eficiente e consultas ao banco de dados otimizadas, será capaz de processar esse passo de forma mais rápida e eficiente.
Por outro lado, código PHP mal escrito ou não otimizado e/ou muitas consultas ineficientes ao banco de dados levarão muito mais tempo para passar pelo Passo 4. Pedidos que levam mais tempo para processar PHP workers por períodos de tempo mais longos.
Estimando o número de PHP Workers necessários
A quantidade de workers que um site precisa depende de vários fatores, como: o quão dinâmico é o site, o quão otimizado é o código do site (quão rapidamente as solicitações podem ser processadas) e que tipo de tráfego o site recebe. Um site otimizado lida com solicitações rapidamente, liberando PHP Workers para a próxima solicitação na fila.
Sites dinâmicos, como lojas virtuais, fóruns, sites de ensino e associações, normalmente precisam de mais PHP Workers do que sites mais estáticos, como sites institucionais. Além disso, quanto mais movimentado um site for, geralmente mais PHP Workers serão necessários.
PHP Workers, CPU e RAM
Ao adicionar PHP Workers, é importante considerar o CPU e os recursos de RAM disponíveis. Se você aumentar os PHP Workers sem ter os recursos adequados, isso pode causar um gargalo, pois as solicitações não serão tratadas de forma eficiente.
Na Kinsta, utilizamos contêineres LXD personalizados com muitos recursos de CPU e RAM. Além disso, nossas máquinas virtuais C2 otimizadas para computação possuem as CPUs mais rápidas do Google Cloud, o que permite que os PHP Workers do seu site sejam executados de maneira mais eficiente. Nossa infraestrutura escalável garante que seu site WordPress tenha recursos de CPU suficientes para operar com desempenho máximo.
Identificando problemas de desempenho relacionados aos PHP Workers
Se muitos pedidos se acumularem na fila devido a um grande fluxo de pedidos, processos de longa duração ou uma combinação de ambos, o site pode ter problemas de desempenho que podem resultar em erros 502 ou 504.
Usando ferramentas como a ferramenta APM da Kinsta e o plugin Query Monitor pode ajudar você a identificar problemas de desempenho e consultas lentas. Nós também recomendamos trabalhar com um especialista qualificado em desempenho para diagnosticar problemas.

A ferramenta de análise do MyKinsta exibe um gráfico de limite de PHP Workers, indicando quantas vezes o número máximo de workers alocados foi atingido em seu site. Essa informação pode ajudá-lo a avaliar se o site está utilizando constantemente seus PHP Workers e também a identificar se a atualização para uma versão mais recente do PHP pode melhorar o desempenho.

A seção de análise de cache no MyKinsta pode ser usada para visualizar o total de pedidos em cache do seu site e as principais derivações do cache.


Reduza e otimize o uso de PHP workers
Cache
Cache de página
Cache é seu melhor amigo quando se trata de otimizar seu site e reduzir o número de PHP Workers necessários. Lembre-se, os PHP Workers não são necessários para o conteúdo em cache. na Kinsta, cuidamos do cache de páginas para você; todos os sites usam o módulo de cache FastCGI da Nginx para uma performance super-rápida.
Cache de objetos
Adicionar um cache de objetos persistente como Redis em frente ao seu banco de dados pode aumentar o desempenho e reduzir a necessidade de PHP Workers. Sem o cache de objetos, as consultas ao banco de dados MySQL são executadas para cada solicitação, mesmo que sejam a mesma consulta e resultados.
O Redis armazena os resultados das consultas ao banco de dados na RAM para que o PHP possa recuperá-los sem reexecutar a consulta. Ao eliminar a necessidade de consultas repetitivas ao banco de dados, os PHP workers economizam recursos e processam solicitações com mais eficiência.
Confira nossos complementos premium para saber mais sobre como adicionar o cache Redis ao seu site.
Otimização de código
Certifique-se de que o código do seu site esteja otimizado para que seja o mais eficiente possível. Isso se aplica ao código personalizado, código de tema e código de plugin. Se você não tem certeza, recomendamos pedir a um desenvolvedor para revisar o código do seu site.
Código personalizado
Se o seu site contém algum trecho de código personalizado em plugins ou seu tema, certifique-se de que eles sejam realmente necessários e bem escritos.
Plugins
Observe atentamente os plugins usados em seu site e verifique se eles são exatamente o que você precisa, não duplicam a funcionalidade e são mais adequados para as necessidades que atendem. Se o seu plugin não for compatível com as versões mais recentes do WordPress e do PHP, talvez seja hora de considerar outras opções. Se você tiver plugins não utilizados em seu site, recomendamos removê-los.
Tema
Usar um tema leve e eficiente é fundamental para garantir um bom desempenho do seu site. Evite temas que contenham funcionalidades que podem ser implementadas melhor por meio de plugins separados, como SEO, filtragem de busca, campos personalizados, controles deslizantes/apresentação de slides de imagem, etc.) ou que não sejam necessários para o seu site.
Atualização PHP
Use a última versão do PHP para uma performance mais rápida. Os benchmarks PHP mostram que cada versão PHP é mais rápida do que a anterior.
Habilite o CDN da Kinsta
A ativação do CDN da Kinsta fornece outro impulso de eficiência e otimização para o seu site. O CDN da Kinsta é nosso HTTP/3 CDN de alto desempenho alimentado por Cloudflare, fornecido a você sem custo adicional. Com ele habilitado, o seu site será capaz de servir ativos estáticos de locais em todo o mundo.
Consulte com um especialista em performance
Se você está familiarizado com a otimização de sites, este é um passo opcional. Um especialista pode ajudá-lo a analisar todos os aspectos de seus sites, identificar gargalos e implementar soluções.