Análise comparativa e detalhada de plug-ins de cache para WordPress


Existem muitos plugins de cache com uma ampla gama de parâmetros e funções - sem uma análise cuidadosa, é impossível fazer uma escolha competente . Depois de navegar na Internet, não encontrei comparações realmente normais. Existem apenas posts apenas para atrair a atenção - descrições de plugins. Coisa comum é pulsos de SEO, por assim dizer. Eu até vi uma tentativa de realizar uma análise comparativa dos três plug-ins, mas nada foi fornecido além de medir a velocidade do download através do serviço online. Mas como tudo está organizado por dentro, o que a otimização influencia não é dito. Afinal, cada site é individual - você ainda precisa de um ajuste fino - precisa entender o princípio de operação para a melhor escolha.

Este artigo foi criado simultaneamente com a criação do material , cuja ênfase está no uso dos resultados da análise. Aqui, quero compartilhar mais detalhes e métodos dessa análise com pessoas e irmãos sofisticados da loja.

Princípios


O WordPress consiste em muitos scripts PHP. Cada vez que você acessa o site (servidor), parte dos scripts é executada e o resultado é gerado na forma de uma página HTML. A principal idéia da otimização é economizar tempo, emitindo um resultado imediatamente finalizado para raramente alterar o conteúdo.

Devido à urgência do problema, muitos plug-ins de cache já foram gravados e novos aparecem. Além disso, como nunca quero pagar muito, foi realizada uma análise comparativa apenas de soluções gratuitas e de shareware.

As principais propriedades que o plug-in deve ter para garantir o armazenamento em cache de alta qualidade são destacadas :

  • Cache do servidor (cache do lado do servidor)
    • Tempo de carregamento da página
      Um dos parâmetros mais importantes. Quanto menor o tempo, mais rápido o cliente recebe a resposta. É claro que você pode escolher um plug-in com muito tempo, mas com altas cargas no servidor, você terá que aumentar o desempenho do hardware, e esses são custos que poderiam ser evitados.
    • Método de cache
      Preservação máxima de todos os objetos HTML, JS, CSS preparados, de preferência também em um estado compactado, para economizar tempo de processamento no servidor e aumentar a velocidade da saída.

  • Cache do cliente
    • Ao emitir o resultado, é possível gerenciar o cache do navegador do cliente. Quando ativada, uma solicitação repetida para o servidor nem chega, o que afeta favoravelmente seu desempenho. É indicado na forma de valores TTL (Time To Live) para cada tipo de objeto (HTML, CSS, JS, Imagens, ...). Para objetos críticos, os valores são pequenos ou iguais a 0.

  • Otimizar
    • Combinar
      Carregando um JS comum (ou CSS) em vez de vários, como todo acesso adicional ao servidor é caro. Isso também é indicado diretamente pelo Teste de velocidade da página do Google .
    • Inline (inclusão)
      O conteúdo do CSS é inserido no HTML, o que reduz o número de chamadas para o servidor. CSS é melhor incluir porque na prática, é difícil dividi-lo nas partes necessárias e não tão.
    • Adiar (download atrasado)
      Carregamento atrasado de scripts JS que não afetam a exibição inicial da página. Também a métrica mais importante que afeta a velocidade de carregamento da página para o usuário. JS é melhor adiar do que incluir diretamente no HTML, pois eles geralmente são simples de separar e a inclusão implicará um aumento no volume de HTML, o que pode levar ao carregamento de várias iterações, o que equivale à aparência de consultas adicionais.
    • Minify
      O conteúdo HTML, JS e CSS geralmente possui partes extras, como espaços, quebras de linha e comentários. É melhor remover tudo isso para reduzir ainda mais o tamanho dos objetos.
    • Comprimir
      Compactação de dados usando o algoritmo GZip (Deflate) para reduzir a quantidade de dados transferidos. Porque HTML, JS e CSS são essencialmente formatos de texto, eles compactam bem.

  • Gerenciar
    • Atualizar (atualizar)
      No caso de o objeto solicitado ser alterado (por exemplo, um novo artigo foi adicionado), o objeto no cache precisa ser recriado, caso contrário, informações irrelevantes serão enviadas aos usuários. Bons plugins são configurados para atualizar automaticamente o cache nos eventos mais óbvios. E sempre deve ser possível liberar todo o cache manualmente. É como um guindaste de parada em um trem - muito raro, mas necessário.
    • Excluir (adicionar exceções)
      Às vezes, você precisa excluir alguns objetos e páginas do cache para corrigir problemas. Deve haver controle suficiente sobre isso.

Comparação de plugins


Para compilar a lista real sob investigação, a seleção de plugins foi feita através do conhecido wordpress.org, com uma busca pelo cache de palavras e uma seleção dos primeiros 140 (10 páginas) adequados. Acabou por 24.

A propósito, se você acha que algum plug-in digno não está na lista - por favor, escreva nos comentários - eu os adicionarei à análise posteriormente.

Metodologia


  • Todos os testes foram realizados na mesma página HTML contendo CSS, JS e vários objetos de mídia para cobrir o intervalo mais geral de tipos.
  • As verificações de funcionalidade foram feitas para cada critério acima e resumidas em uma tabela.
  • Cada critério recebe o peso da importância de influenciar a pontuação geral (eles são visíveis na tabela detalhada em anexo).
  • A medição do tempo de carregamento da página foi feita primeiro sem otimização, depois houve uma medição com cada plug-in e uma comparação relativa dos tempos foi feita. Isso garante independência suficiente da velocidade de hospedagem.
  • O ambiente é o mais recente:
    • WordPress 4.9.8,
    • PHP 7.2.10 com cache ativado (OpCache),
    • MariaDB (MySQL) 10.3.9,
    • Apache 2.4.35.


Cada critério foi verificado usando o navegador Chrome:

  • Na seção de depuração, pressionando F12 na seção Rede, os horários dos diferentes estágios de carregamento e os cabeçalhos HTTP das respostas do servidor são claramente visíveis para verificar o controle e a compactação do cache do navegador. Você também pode ver a união de CSS e JS em um ou mais arquivos.
  • Usando o View Page Source, no botão direito, a análise do conteúdo retornado foi realizada com a inclusão de CSS, a qualidade da minificação (apenas HTML, JS, CSS) e sinais de carregamento atrasado de scripts JS (atributos defer ou assíncronos devem estar presentes na descrição do link da tag para o script).
  • O carregamento atrasado de JS também foi verificado para manter a integridade do site, pois O Teste de velocidade da página do Google pode mostrar que tudo é legal e os scripts não estão funcionando.

Resultados


O principal resultado da análise é uma tabela XLSX detalhada, na qual você pode classificar, filtrar e ver a metodologia para o cálculo dos pesos finais. Ele também contém notas sobre as especificidades do plug-in ao avaliar cada critério.

Cada plug-in recebe funções de acordo com os resultados do teste para a conveniência de entender o espectro de cobertura das propriedades necessárias.

Abaixo estão os resultados resumidos da comparação para entender a imagem geral e a conveniência.
Plugin
Função
Pontuação
Total
Cache do servidor
Cache do cliente
Otimizar
Gerenciar
LiteSpeed ​​Cache +
Hyper Cache Extended +
Otimizar automaticamente +
Speed ​​Up - Navegador
Armazenamento em cache
(Pacote)
Cheio
96%
98%
71%
100%
100%
Brisa
1.0.10
Cheio
93%
95%
71%
97%
75%
Cache do WordPress
e CDN Plugin +
Otimizar automaticamente
(Pacote)
Cheio
90%
98%
100%
83%
75%
Otimizar automaticamente +
Ativador de cache
Speed ​​Up - Navegador
Armazenamento em cache
(Pacote)
Cheio
88%
98%
71%
83%
100%
Cache total W3
0.9.7
Cheio
84%
55%
100%
100%
100%
Cache do WordPress
e CDN Plugin
1.5.04
Cheio
82%
98%
100%
67%
75%
LiteSpeed ​​Cache +
Cache mais rápido do WP
(Pacote)
Cheio
79%
50%
71%
100%
100%
WP Rocket
3.2.0.1
Cheio
76%
50%
71%
95%
100%
WP Velocidade da luz
2.3.2
Cheio
70%
50%
71%
83%
100%
Cache Yasakani
2.0.4
Cheio
64%
98%
0%
53%
75%
Página de beija-flor
Otimização de velocidade
1.9.2
Otimizar
53%
48%
71%
50%
100%
Cache mais rápido do WP
0.8.8.6
Cheio
52%
50%
71%
47%
100%
Ativador de cache
1.3.1
Cache do servidor
48%
95%
0%
20%
100%
Cache LiteSpeed
2.6.1
Otimizar
47%
2%
71%
70%
100%
Script de cache para Wordpress (bruto)
2.06
Cache do servidor
47%
98%
0%
20%
50%
Otimizar automaticamente
2.4.1
Otimizar
44%
2%
36%
73%
100%
Cache Alimentado
1.2.2
Cheio
44%
50%
71%
30%
100%
Hiper cache
3.3.7
Cache do servidor
43%
95%
0%
10%
100%
Hyper Cache Extended
1.6.3
Cache do servidor
43%
95%
0%
10%
100%
Cache simples
1.6.4
Cache do servidor
43%
95%
0%
10%
100%
Cache super estático
3.3.5
Cache do servidor
43%
95%
0%
10%
100%
Super cache WP
1.6.4
Cache do servidor
43%
95%
0%
10%
100%
Velocidade rápida minify
2.3.5
Otimizar
36%
2%
0%
65%
100%
Desempenho do WP
Reforço de pontuação
1.9.2.1
Cache do cliente
31%
23%
71%
30%
0%
Speed ​​booster pack
3.7.1
Otimizar
27%
0%
0%
52%
50%
Cache de cometa
170220
Cheio
27%
25%
0%
30%
100%
Speed ​​Up - Navegador
Armazenamento em cache
1.0.2
Cache do cliente
23%
0%
71%
30%
0%
Cache Gator
2.1.7
Cache do servidor
20%
48%
0%
0%
100%
Cachify
2.2.4
Cheio
16%
25%
0%
10%
50%
Controle de cache
2.2.2
Cache do cliente
3%
0%
29%
0%
0%

Conclusão


A tabela resultante permite selecionar plugins de acordo com os critérios necessários e várias combinações para maximizar a cobertura dos critérios necessários. Em suporte a 4 combinações foram selecionadas e testadas (pacote marcado em vez de versão).

Configurações específicas são descritas no material mencionado no início do artigo.

  • É melhor usar combinações diferentes de plugins em vez de individualmente.
  • Uma classificação geral baixa do plug-in não é um sinal de sua inadequação. Pode ser bom em algumas funcionalidades específicas.
  • Alguns plugins são incompatíveis entre si quando combinados.
  • Você sempre precisa verificar a operação correta do carregamento adiado do JS - alguns plugins precisam ser configurados adicionalmente e outros ainda interrompem o conteúdo. A tabela contém comentários sobre este tópico.
  • E, finalmente, verifique o Teste de velocidade da página do Google (ou outros medidores externos, como PingDom e outros) - em sites diferentes, pode haver resultados diferentes, porque otimizar plug-ins pode se comportar de maneira diferente.

Source: https://habr.com/ru/post/pt426835/


All Articles