- Versão do PHP:
O PHP recebe a cada nova versão melhorias de desempenho e recursos que podem ajudar no site. Como o WordPress é um sistema constantemente atualizado, ele suporta até as versões mais novas do PHP. Por isso uma boa recomendação é escolher a versão mais recente disponível. Se não for possível devido a algum plugin ou sistema no mesmo domínio que exiga uma versão mais antiga para funcionar, colocar a versão mais nova suportada por por todos os sistemas e sites do domínio: - Escolher um sistema de gerenciamento de cache (opcodes) do PHP:
Recomendamos, por questão de suporte oficial, estabilidade e desempenho o conjunto Opcache + APCU. Porem se não puder usar este conjunto por algum motivo, pode também usar o XCache ou o EAccelerator. Porem estes ultimos são extra oficiais e não são tão bem suportados:
+ - Ajustes finos no W3 Total Cache:
O W3TC já vem com algumas configurações recomendadas para uso geral em hospedagens compartilhadas. Porem estas configurações são otimizadas para pegar na maioria dos servidores e não necessariamente para obter o melhor desempenho e consumo de recursos. Por isso seguem abaixo alguns ajustes otimizados para usar melhor as capacidades de nossos servidores:
- Page Cache: Disk Enhanced
No configuração do Page cache, o recomendado é Disk: Enhanced. Pois o cache das páginas tende a ficar muito grande e se colocado dentro de um cache do tipo Opcode, ele tende a rapidamente consumir toda a memória disponível para ele.
- Database cache: Desativado
O cache de banco não ajuda na nossa infraestrutura pois o nosso MySQL já usa de caches internos para melhorar o desempenho das consultas de forma bem mais eficiente, já que alcança uma gama muito maior de querys e é compartilhado. Além disso, o Object Cache, e conhecido por fazer otimizações de cache também nos mesmos elementos que consultam o banco, porem de forma mais eficiente, mas sem os mesmos problemas. Somando-se a isso, o Database cache do WordPress pode causar defasagem em sites que recebam muitas atualizações ou comentários.
- Object Cache: Opcode: Alternative PHP Cache (APC)
Esta é uma das poucas opções em que vale realmente a pena ativar o cache como Opcode(recomendamos o APC), pois os "objetos" da página são elementos que gastam pouca memória, mas são muito usados e acabam gastando muito processamento e gerando muitas consultas ao banco de dados. Por isso são perfeitos para ficarem em caches de memória, assim eles dão grande beneficio de desempenho a página, gastam pouca memória e não precisam "esperar pelo disco" por estarem diretamente na memória RAM.
- Browser Cache: Enable
Este sempre é recomendado estar ativo, ele regula os caches dos navegadores dos clientes para manterem fora do cache de seus navegadores o conteúdo que sofre muita atualização e ao mesmo tempo seguram o máximo de tempo possível os elementos que nunca são alterados diretamente, como imagens. É uma opção que traz benefícios em tudo, não gasta recursos e melhora drasticamente o desempenho:
As outras opções do W3TC abaixo ficam a gosto e disponibilidade do usuário:
Minify: Melhora o tempo de carregamento da página ao diminuir ao justar os elementos, comprimir e diminuir os espaços entre eles. Mas diferente das outras opções, este não trás melhorias de diminuição no consumo de recursos, apenas melhoram o tempo de carregamento da página. Mas em contra partida o minify, pode "deformar" ou gerar erros no site a depender dos plugins e temas usados, por isso recomendamos que verifique a página antes de ativa-lo e depois de ativa-lo em busca de erros e deformações gerados e desative caso encontre algo.
Obs.: O sistema de cache recomendado para o minify caso use-o é o Opcode: Alternative PHP Cache (APC) pois os elementos "minificados" são pequenos e podem ganhar desempenho ao serem guardados na memória.
CDN: É um servidor intermediário para colocar o conteúdo da página e diminuir o acesso ao servidor. Ele traz benefícios tanto em desempenho quanto em estabilidade, pois os CDNs costumam usar servidores geograficamente mais próximos aos usuários de forma automática, distribuídos para evitar que quedas em um servidor ou até na hospedagem deixem o site off-line e também ajudam principalmente em diminuição de consumo de banda, pois deixa a maior parte do conteúdo preparado nos servidores intermediários. Porem é necessário possuir um serviço de CDN contratado em algumas das empresas listadas pelo plugin e isto normalmente possui custos elevados.
Reverse Proxy: É uma versão mais simples e mais "fraca" de um CDN, diferente do primeiro, este não é distribuído automaticamente para ficar mais próximo ao cliente, ajudando apenas na diminuição no consumo de banda e não costuma possuir redundancia para caso caia, o que até aumenta as chances do site sair do ar (pois caso o proxy ou a hospedagem fiquem fora por qualquer motivo, o site vai cair independente do outro estar online). A única vantagem sobre o CDN é que normalmente é mais barato.
Segue abaixo um passo a passo fácil de como otimizar o W3TC para a nossa hospedagem obtendo o melhor desempenho, consumindo o mínimo de recursos: