Habilite / desabilite o cache do Joomla para melhorar o desempenho [How To]

cache do joomla

O poder de um CMS como o Joomla é que é alimentado por um banco de dados, tornando todo o site e conteúdo dinâmico. Mas, quando se trata de desempenho, essa infraestrutura de banco de dados é o calcanhar de Aquiles. Buscar o conteúdo do banco de dados em cada ocorrência é um gargalo de desempenho. Mas existe um meio-termo excelente, usando o cache do Joomla.

Neste artigo, vamos fornecer o guia final para o uso de várias formas de cache do Joomla para dar ao seu site um aumento instantâneo e excelente de desempenho.

O que é um cache?

De acordo com o Wikipedia:

Um cache é um componente de hardware ou software que armazena dados para que solicitações futuras desses dados possam ser atendidas com mais rapidez; os dados armazenados em um cache podem ser o resultado de um cálculo anterior ou uma cópia dos dados armazenados em outro lugar. UMA acerto de cache ocorre quando os dados solicitados podem ser encontrados em um cache, enquanto um falta de cache ocorre quando não pode. As ocorrências de cache são atendidas pela leitura de dados do cache, o que é mais rápido do que recomputar um resultado ou ler de um armazenamento de dados mais lento; portanto, quanto mais solicitações puderem ser atendidas do cache, mais rápido será o desempenho do sistema.

Mas o que isso significa em termos de Joomla?

Quando um visitante acessa seu site, o Joomla normalmente executa uma série de consultas no banco de dados para buscar todas as informações, como menus, conteúdo, módulos e outros conteúdos dinâmicos e renderizá-los em tempo real.

Conforme a quantidade de dados em seu banco de dados aumenta ou seu site recebe mais e mais visitantes, o desempenho da configuração geral começa a diminuir. Mesmo com poucos usuários, em hospedagem compartilhada, o desempenho pode ser lento, independentemente de seu site estar recebendo muitos visitantes ou não.

Quando o cache do Joomla está em uso, em vez de acessar o banco de dados MySQL com as mesmas consultas repetidamente, seu primeiro acesso armazena os dados em um conjunto de arquivos locais (no diretório de cache do Joomla). Acessos subsequentes recuperarão o conteúdo desses arquivos, em vez de do banco de dados.

Isso ocorre porque ler dados de um arquivo local é muitas vezes mais rápido do que lê-los de um banco de dados.

Isso significa que todo o site será carregado quase instantaneamente e terá um desempenho muito melhor. Seu site ficará mais rápido e será capaz de suportar mais usuários simultâneos.

Aqui está a aparência de todo o conceito em uma imagem:

fluxo de trabalho de cache

Observe que isso é diferente do cache do navegador - o cache do navegador é algo recomendado pelo servidor da web (mas feito pelo navegador local). O cache do lado do servidor, por outro lado, é o cache real dos recursos e HTML criados no servidor da web.

Se você quiser ler mais sobre como aproveitar o cache do navegador, leia este artigo aqui.

Claro, a ÚNICA maneira de realmente melhorar o desempenho é mudar para um servidor de hospedagem mais rápido. Dê uma olhada em nosso InMotion hospedando VPS rever aqui.

Como habilitar o Cache no Joomla

O cache é uma função implementada no núcleo do Joomla. Portanto, ativar o cache principal do Joomla é muito simples.

De Configuração Global, clique em System Guia, e no lado direito, há o Configurações de cache seção.

Clique na lista suspensa e selecione ATIVADO - Cache conservador or LIGADO - Cache Progressivo nas configurações de cache e coloque uma quantidade razoável em minutos. 60 minutos deve ser o mínimo para a maioria dos sites.

Habilitar cache do joomla

Cache conservador permite que você especifique que módulos específicos não são armazenados em cache (na configuração dos próprios módulos).

Cache progressivo substitui esta configuração e armazena em cache todos os módulos sempre. Temos a tendência de usar o cache Conservative para manter a capacidade de decidir não armazenar em cache um módulo específico.

Em geral, recomendamos que esse tempo seja mais longo, normalmente 240 minutos (4 horas) ou até mais. Você sempre pode limpar (ou redefinir) o cache se desejar atualizá-lo.

Depois de pressionar Aplicar, o cache do Joomla para módulos e componentes será habilitado. Contudo esta configuração não é suficiente, ainda temos um passo pela frente! Ainda queremos habilitar o cache de página.

Para habilitar o cache de página do Joomla, você precisa ir para Extensões> Plugins, procure Cache e clique em Sistema - Cache de página. Você precisa ter certeza de que este plugin está habilitado. Você também pode optar por definir o cache do navegador ativando o Usar cache do navegador interruptor.

Você também pode optar por excluir itens de menu específicos do armazenamento em cache, por exemplo, a seguir está excluindo o menu Fale conosco.

habilitar o plugin de cache de página do sistema joomla

Se houver páginas que você deseja excluir do armazenamento em cache, você pode ir para a guia Avançado e especificar cada URL que deseja excluir do armazenamento em cache. Você precisa especificar cada URL que deseja excluir do armazenamento em cache, em uma linha separada.

Expressões regulares também são suportadas, por exemplo, about \ - [az] + irá excluir todos os URLs que tenham 'about-', como 'about-us', 'about-me', 'about-joomla' etc while / component / users / excluirá todos os URLs que possuem / component / users /.

Depois de habilitar e salvar, você verá um tempo de carregamento da página da web muito melhor.

Se você usar uma ferramenta de teste de velocidade da página, como https://webpagetest.org/ você deve notar uma grande diferença, especialmente se também habilitou o cache do navegador.

Você deve, em particular, notar uma diferença marcante no tempo até o primeiro byte:

collectiveray teste de desempenho de página da web

 

Se o seu host Joomla suporta, como a hospedagem de CollectiveRay.com - você também pode ativar o Memcache para tornar seu site Joomla ainda mais rápido!

Como limpar ou liberar o cache do Joomla

Quando você habilitar o cache do Joomla, o conteúdo do front-end do seu site não será atualizado até que o tempo de cache expire de acordo com suas configurações. 

Então, o que você faz se quiser redefinir o cache? Este é um procedimento bastante simples. Simplesmente vá para Sistema> Limpar Cachee clique em Excluir tudo. Isso irá liberar todo o cache do Joomla e o conteúdo agora será atualizado com o novo conteúdo.

Você pode simplesmente liberar apenas partes específicas do cache, marcando a caixa de seleção apropriada e clicando em Excluir.

Limpar cache do Joomla

Plugin Joomla Cache Alternativo

Um problema que encontramos com o cache nativo do Joomla é que você não pode redefinir uma única página apenas. Para sites com centenas ou mesmo milhares de páginas, redefinir todo o cache sempre que você realizar uma pequena alteração começa a se tornar um gargalo, especialmente se você tiver muito tráfego.

Nesse caso, recomendamos optar por um plug-in de cache alternativo do Joomla que permite redefinir o cache da página em um URL ou nível de página.

Nosso plugin de cache alternativo favorito do Joomla é o JotCache. Além das configurações avançadas de cache, você também pode aquecer o cache (ou seja, rastrear todas as páginas para que sejam colocadas no cache antes que o usuário as acesse, limpar o cache de apenas uma página e excluir URLs específicos ou componentes inteiros Por exemplo, você pode excluir seu componente Virtuemart do armazenamento em cache ou o módulo / componente de seus usuários.

Verifique as configurações avançadas aqui:

jotcache excluir url

E aqui está a tela que permite redefinir ou limpar o cache de apenas uma página:

visão de gerenciamento de componente jotcache

Confira JotCache

Como habilitar o Joomla Memcached

Uma das fixações que tivemos no passado recente é uma fixação para fazer nosso site carregar insanamente rápido - e foi quando ouvimos pela primeira vez sobre Joomla Memcache (d).

Se isso for suportado pela infraestrutura do servidor, gostaríamos de habilitá-lo. Por exemplo, alguns de nossos sites que estão SiteGround, habilite isso porque dá um bom aumento de velocidade. A propósito, gostamos da configuração do servidor em SiteGround. Por padrão, mudando seu site de um serviço barato de hospedagem compartilhada para SiteGround verá o site de carregamento reduzido em pelo menos 2 segundos (sem outras alterações).

Isso significa que eles configuraram seus servidores de maneira muito adequada. Mas há mais para tornar seu site mais rápido. É aqui que o Joomla Memcached entra em jogo.

Além da configuração padrão, SiteGround oferece três níveis de cache para tornar seu site mais rápido

  1. Cache estático - armazena em cache seu conteúdo estático (semelhante ao que um CDN faria)
  2. Cache dinâmico - cria cópias do conteúdo dinâmico do seu site e as armazena na RAM do servidor. Isso requer seu próprio plug-in personalizado para uma boa interface com o seu site e o servidor no qual está hospedado
  3. A tecnologia Joomla Memcached acelera as chamadas de banco de dados, chamadas de API e renderização de página, armazenando dados e objetos na memória para reduzir o número de vezes que um banco de dados é consultado. SiteGround é a única empresa que aplica o algoritmo memcached em um ambiente de servidor compartilhado.

 

A grande coisa é que o Joomla suporta memcache por padrão, mas como isso requer alguns ajustes, você não o encontrará nas configurações normais de cache na Configuração Global.

Como você pode ver abaixo, as configurações de memcached do Joomla 3 estão ocultas (você não tem uma opção de memcached abaixo) e precisam ser ativadas fazendo um pequeno ajuste no arquivo configuration.php.

 Configurações padrão de cache do Joomla

 

Para ativar o Memcache, você precisará editar seu Configuration.php e editar as duas variáveis ​​a seguir:

public $ caching = '0';
public $ cache_handler = 'arquivo';

para:

public $ caching = '2';
public $ cache_handler = 'memcache';
public $ memcache_server_host = 'localhost';
public $ memcache_server_port = 'xxxxxx'

 onde xxxxxx é uma porta especificada por seu servidor de hospedagem. Verifique as informações com seu servidor de hospedagem.

Configurações do Joomla Memcache

Configurações do Joomla memcache

  

Feito isso, seu Joomla agora está memcached e você deverá ver outra melhoria no tempo de carregamento do seu site. Isto é particularmente útil para sites ocupados. Certifique-se de verificar se o seu site suporta memcached - se não, você deve fornecer SiteGround um olhar ;)

Existem muitos outros artigos sobre desempenho neste site, um dos mais populares é como corrigir o erro chamado, aproveitar o cache do navegador - temos uma explicação completa sobre CollectiveRay.

 

Ative o cache do Joomla para um site joomla mais rápido

Como habilitar o PHP OpCache para Joomla

Os pontos acima já deveriam ter levado seu site a um tempo de carregamento e execução bastante melhor. Mas ainda há uma coisa que impede seu tempo de carregamento.

Geralmente, esse é o tempo que leva para executar o próprio código PHP. Veja, PHP é uma linguagem de programação que é executada linha por linha. O servidor normalmente traduz o código PHP em instruções executáveis ​​por máquina e, em seguida, as executa.

No entanto, quando se trata de executar as instruções novamente, elas serão traduzidas novamente. Portanto, toda vez que o mesmo código é executado, ele precisa ser traduzido novamente.

Esse é um gargalo de desempenho que pode ser resolvido por meio de algo chamado cache de OpCode ou OpCaching. Ao usar o cache OpCode, é criado um novo tipo de cache que armazena o código de máquina traduzido anteriormente para que, quando a linha precisar ser executada novamente, o código executável por máquina já esteja disponível.

Abaixo você pode ver um diagrama de como isso funciona na vida real:

Cache de opcode PHP

O cache OpCode requer suporte do seu servidor de hospedagem. Se o seu site estiver rodando em CPanel e WHM, você precisará obter acesso ROOT ao WHM e habilitar PHP-FPM ou outro pacote de cache OpCode. 

Isso também difere entre o PHP 7.2 e o PHP 7.3 - seria melhor perguntar à sua empresa de hospedagem se isso é possível e como fazê-lo. Usamos um InMotion VPS, portanto temos total controle do serviço, e nossa configuração atual usa PHP-FPM.

Se você tiver acesso ROOT ao WHM, vá para PHP MultiPHP Manager e instale um pacote com PHP-FPM.

Depois de habilitar isso, você poderá ver as seguintes informações nas informações do PHP no Joomla. Você pode encontrar isso em Sistema> Informações do sistema> Informações PHP

Você pode ver os acertos do Cache, isso é uma indicação de que o PHP está obtendo OpCodes do cache, não os recriando do zero todas as vezes.

zend opcode cache joomla

Opção alternativa de cache - servidor LiteSpeed

Mais uma vez, se você tiver um VPS instalado, poderá ter muito mais controle e obter melhor desempenho do seu servidor. 

Uma das técnicas avançadas que fizemos para tornar nosso site insanamente mais rápido é usar o servidor LiteSpeed ​​em vez do Apache ou NGINX. LiteSpeed ​​é um servidor web corporativo que substitui o Apache.

Isso significa que você pode manter toda a configuração do Apache, mas obter um tempo de execução muito mais rápido. 

O LiteSpeed ​​possui o OpCache e o cache de páginas embutidos como um componente específico do Joomla. Ele vem com seu próprio componente de cache avançado que permite que você libere apenas páginas únicas, de forma que, se você atualizar uma página, não terá que invalidar o cache completo.

LiteSpeed ​​Joomla Cache Options

Existem várias opções de cache avançadas que você pode usar, usamos esse servidor para obter uma velocidade de carregamento de site incrível. O servidor LiteSpeed ​​custa $ 10 / mês, mas acreditamos que seja um excelente investimento.

Confira o LiteSpeed ​​Server agora

Pontos importantes:

Ao habilitar o cache do Joomla, você pode notar que suas "Contagens de acessos" não estão mais aumentando em cada acesso. Essencialmente, como você está armazenando uma cópia do conteúdo por algum tempo, os acessos só aumentarão cada vez que o cache expirar. Embora isso possa soar como uma desvantagem, acreditamos que você deve ignorar completamente as contagens de acessos, independentemente de habilitar o cache do Joomla ou não. As contagens de acessos são distorcidas e imprecisas por vários motivos

1. Eles são inflados por seus próprios sucessos

2. Eles são inflados por bots, rastreadores e outros visitantes "irreais" ou "fantasmas"; eles não são visitantes reais de seus sites. Eles são apenas scripts executando suas tarefas de robô. Pensar neles como pessoas reais lendo suas postagens levará a um cenário irreal

3. Serviços como o Google Analytics são muito mais precisos no tratamento de scripts e na criação de uma análise detalhada e do perfil dos visitantes do seu site. Será muito melhor se você usar um script como o Google Analytics para isso. Você pode usar nosso Plug-in do Joomla Google Analytics para fazer isso.

Como você pode ver em todo o nosso site, desabilitamos a maioria dos lugares onde os acessos do Joomla aparecem, porque acreditamos que eles são inúteis, literalmente um desperdício de recursos. Se você quer saber quem está acessando seu site, use o Google Analytics. Se você quer impressionar seus visitantes com o número de visualizações de página que você tem, adicione alguns botões sociais. Eles são muito mais propensos a trazer bastante tráfego e, claro, eles são realmente precisos.

Joomla1.5

Ativar o Joomla Cache também é simples. De Configuração Global, clique em System Tab, e do lado direito está o Configurações de cache seção. Clique em Sim em Configurações de cache e coloque uma quantidade razoável em minutos (60 minutos deve ser suficiente para a maioria dos sites). Assim que você pressionar Aplicar, o cache será ativado.

Joomla1.0 

O cache Joomla padrão é habilitado em Site> Configuração Global> Sistema> Configurações de Cache (ou Site> Configuração Global> guia Cache para Joomla 1.0) e marque-o como habilitado.

Embora existam componentes escritos para cache, o cache out of the box dará ao seu site um impulso instantâneo.

Perguntas Frequentes

O que é um cache?

Um cache é um mecanismo que armazena uma cópia temporária do conteúdo em armazenamento rápido local (como disco ou memória) para que o servidor não precise buscar o conteúdo do banco de dados toda vez que um visitante acessa um site. Isso torna o tempo de carregamento de um site muito mais rápido.

Como faço para habilitar o cache do Joomla?

Existem várias opções para habilitar o cache do Joomla. O método mais simples é habilitar isso por meio do núcleo do Joomla, na Configuração Global, em Sistema na seção Configurações de cache. Basta habilitar o Cache para Ativado - Cache conservador. Você também deve habilitar o plug-in de cache de página em Extensões> Plug-ins para cache de nível de página. Você também deve consultar este artigo para várias outras opções avançadas de armazenamento em cache.

Como faço para limpar o cache do Joomla?

Para limpar o cache do Joomla, simplesmente vá para Sistema> Limpar Cache e clique em Excluir tudo.

Conclusão

Acima, vimos as várias maneiras de habilitar o cache do Joomla, tanto do núcleo quanto usando componentes externos e avançados para tornar seu site mais rápido. Escreva-nos e diga-nos se tivermos perdido alguma coisa.

 

Sobre o autor
David Attard
David trabalha na indústria online e digital ou em torno dela há 21 anos. Ele tem vasta experiência nas indústrias de software e web design usando WordPress, Joomla e nichos que os cercam. Ele trabalhou com agências de desenvolvimento de software, empresas internacionais de software, agências de marketing locais e agora é Chefe de Operações de Marketing na Aphex Media – uma agência de SEO. Como consultor digital, seu foco é ajudar as empresas a obter uma vantagem competitiva usando uma combinação de seus sites e plataformas digitais disponíveis atualmente. Sua combinação de experiência em tecnologia combinada com uma forte visão de negócios traz uma vantagem competitiva aos seus escritos.

Mais uma coisa... Você sabia que as pessoas que compartilham coisas úteis como esta postagem também parecem FANTÁSTICAS? ;-)
. deixe um útil comente com suas ideias, depois compartilhe com seu (s) grupo (s) do Facebook, que considerariam isso útil e vamos colher os benefícios juntos. Obrigado por compartilhar e ser legal!

Divulgação: Esta página pode conter links para sites externos de produtos que amamos e recomendamos de todo o coração. Se você comprar produtos que sugerimos, podemos receber uma taxa de referência. Essas taxas não influenciam nossas recomendações e não aceitamos pagamentos por análises positivas.

 

quem somos nós?

CollectiveRay é administrado por David Attard - trabalhando dentro e ao redor do nicho de web design por mais de 12 anos, oferecemos dicas práticas para pessoas que trabalham com e em sites. Também administramos DronesBuy.net - um site para entusiastas de drones.

David Attard

 

 

Autor (es) em destaque em:  Logotipo da revista Inc   Logotipo do Sitepoint   Logotipo do CSS Tricks    logotipo do webdesignerdepot   Logotipo WPMU DEV   e muitos mais ...