O uso excessivo de recursos da CPU tem três causas principais:
- Uso ineficiente de temas e plugins de terceiros;
- Código desatualizado;
- Erros de configuração (ferramentas de configurações / configuração PHP).
A seguir, algumas sugestões possível para otimizar o uso de recursos da CPU. As sugestões têm como objetivo reduzir a quantidade de recursos consumidos pelo site, mas nem sempre garantem a solução de todos os problemas de uso de recursos.
Alguns passos adicionais que você pode fazer para evitar problemas de uso de recursos de CPU incluem:
- Gerar uma página HTML com um conteúdo popular;
- Ativar o cache que está disponível através de diversos scripts populares;
- Desabilitar recursos de alta utilização da CPU como, por exemplo, pesquisas ou atualizações Ajax.
Dicas adicionais
Divida os processos HTTP
Uma forma de evitar que seu site efetue muitas solicitações HTTP oriundas de um mesmo domínio é dividir os processos entre eles.
A divisão de processos consiste em obter um ou mais domínios com o objetivo de chamar arquivos estáticos para servi-los, como mostra o exemplo abaixo:
http://subdominio.com.br/arquivo.css
http://subdominio2.com.br/arquivo2.css
É interessante otimizar todo seu site para este modelo de programação. Isto trará benefícios de velocidade e menos consumo para o usuário em questão.
Utilize CDN para arquivos estáticos
A CDN (Content Delivery Network) é uma rede capaz de servir arquivos estáticos de forma rápida, evitando que sua hospedagem tenha que processar o arquivo. Geralmente é voltada para a execução de arquivos do tipo JS/CSS.
Existem CDN realmente boas como, por exemplo, as do Google ou CloudFlareJS.
Divida os processos da CPU
Tem como objetivo separar os processos entre contas para evitar que uma conta sobrecarregue o servidor e/ou os 25 processos padrão. Este procedimento somente pode ser executado em servidores de revenda e dedicados.
Ele consiste em criar, no WHM, um subdomínio que sirva os arquivos de sua hospedagem como, por exemplo:
Usuario1: subdA
URL: http://subdominio1.com.br
Usuario2: subdB
URL: http://subdominio2.com.br
Depois de criar os subdomínios, é possível mover os arquivos estáticos de seu site para o diretório ‘public_html’ destes domínios e chamá-los em seu site. Com isso, processos como arquivos estáticos serão divididos entre as contas.
Utilize CDN (Content Delivery Network)
Trata-se de uma rede de distribuição de informação que permite fornecer conteúdo web de forma mais rápida a um grande número de utilizadores, distribuindo o conteúdo por múltiplos servidores de forma a efetuar a duplicação do mesmo e direcionar o conteúdo ao utilizador com base na proximidade do servidor.
Este método é utilizado para evitar gastos de largura de banda desnecessários, otimizando a velocidade de acesso aos conteúdos. Você pode utilizar uma CDN free como o CloudFlare.
Utilize paginação
Paginação é a separação de artigos em páginas. Por exemplo, quando você acessa um site, no final dele existe uma barra com numeração para navegação, isto é a paginação.
Além de separar a navegação, este recurso também diminuir os processamentos ocasionados pelo site.
Quando realizamos uma consulta no banco de dados de um site com muito conteúdo, por exemplo, todo o banco de dados do site é carregado, o que geralmente ocasiona problemas de consumo da CPU. Com a paginação, o problema é evitado. O recomendável é que deixa a paginação em 5 conteúdos por página.
Mantenha seu código limpo
É importante manter o código de seu site limpo, otimizado e atualizado.
Por padrão, a hospedagem cria um arquivo de nome ‘error_log’ – onde são gravados todos os erros localizados em seu site. Verifique este arquivo e otimize seu site nas buscas de arquivos inexistentes, links inexistentes ou erros de programação.
Arquivos inexistentes aumentam o processamento do servidor e o tempo de carregamento de seu site. Para verificar o site, utilize ferramentas de consulta como GTMetrix, por exemplo.
Atualize sempre
Sempre atualize seu site, optando por versões estáveis de seus aplicativos.
Ao manter seu site atualizado você diminui os riscos de uma invasão, já que muitos invasores utilizam pequenas falhas para introduzir aplicativos maliciosos.
A utilização de imagens “pesadas” nos posts ou no design do site aumenta o tempo de carregamento das páginas.
Escolher cada um dos formatos e ver a qualidade/tamanho da imagem e depois guardo no formato que melhor qualidade apresentar com o menor tamanho possível.
É importante também nunca redimensionar uma imagem através de código HTML. Você continua a carregar uma imagem com um tamanho superior aquele que podia ter a imagem se fosse mais pequena.
No caso de querer mostrar uma imagem grande aos seus visitantes considere criar uma imagem mais pequena com um link para a imagem grande.
Otimizar imagens com ferramentas especiais
Existem excelentes ferramentas online e utilitários para download que podem ajudá-lo a reduzir e otimizar significativamente suas imagens sem perda de qualidade. É uma boa prática usar algumas dessas ferramentas para otimizar suas imagens e obter arquivos de tamanhos menores. Atenção aos termos de uso de algumas dessas ferramentas.
Smush.it
Smush.it é uma ferramenta online que utiliza técnicas de otimização diferentes para cada formato de imagem (PNG, GIF, JPEG) para remover bytes desnecessários da imagem sem perda de qualidade. Você também pode usar Smush.it integrado com o plugin do Firefox YSlow ou através de um plugin WordPress.
JPEGmini
Excelente para diminuir o tamanho de arquivos JPG sem perda de qualidade. Qualquer um pode usar o JPEGmini para comprimir 1 imagem por vez, e, criando uma conta (grátis), é possível enviar arquivos em lote e criar álbuns com as imagens otimizadas.
punypng
punypng usa diversas técnicas de otimização de imagens para web para reduzir o tamanho dos arquivos. Os desenvolvedores do punypng afirmam que a ferramenta é atualmente mais eficiente do que o Smush.it.
PNG Monster
PNG Monster é uma GUI para compressão de PNG projetada para converter com eficiência grandes números de arquivos PNG automaticamente. PNG Monster usa uma variedade de aplicações “command-line” (PNGRewrite, PNGCrush, OptiPNG, PNGOut, AdvPNG) para comprimir com variados métodos de compressão PNG.
SuperPNG
SuperPNG é um plugin grátis do Phosothop para salvar arquivos PNG significativamente menores em relação ao salvamento nativo do Phosothop. Também inclui algumas características avançadas de PNG, como suporte a 16 -bit color, compressão variável, correção de gama e salvamento de metadata.
TinyPNG
Uma das melhores ferramentas de compressão de PNG da atualidade! O TinyPNG realmente tem um script eficiente que consegue diminuir o tamanho dos arquivos em mais 80%!
Compress PNG
Tão eficiente quanto o TinyPNG, a Compress PNG, apesar de um pouco mais lenta para trabalhar, ainda permite algumas configurações na otimização para que se adeque às necessidades de cada upload.
SuperGIF
SuperGIF é um utilitário gratuito para Windows e MAC para otimizar imagens GIF. Ele permite comprimir um arquivo GIF em até 50%! A versão gratuita comprime somente um arquivo por vez.
jStrip
jStrip é um programa gratuito que reduz e otimiza imagens e JPG sem sacrificar a qualidade das imagens. JStrip trabalha removendo informações desnecessárias do arquivo JPG sem perda de qualidade ou recompressão.
Uma das técnicas recomendadas para otimizar o desempenho do seu site é comprimir o conteúdo do site antes de enviá-lo para o navegador do usuário final. Isso economizará uma quantidade considerável de banda e fará com que o site carregue muito mais rápido em comparação à sua versão não comprimida.
Para ativar o recurso, acesse o item “Otimizar Website” e escolha a opção “Compress all content”. Você pode ativar ou desativar o mod_deflate em seu painel (cPanel), realizando os seguintes procedimentos:
1. Após acessar seu painel, na aba No “Software / Serviços” clique na opção “Otimizar site”.
2. Em “Compactar conteúdo”, selecione a opção apropriada:
• Desativar
• Compactar todo o conteúdo
• Compactar os tipos MIME especificados
3. Selecione a opção desejada e clique em “Atualizar definições”.
O módulo mod_deflate fornece funcionalidade semelhante a do mod_gzip e está disponível em todos os planos (exceto em servidores dedicados Windows).