Grav - Desempenho e cache

Neste capítulo, vamos entender os conceitos de desempenho e cache no Grav.

atuação

O termo desempenho se refere ao desempenho do sistema de tal forma que ele pode lidar com uma carga maior no sistema e modificar o sistema para lidar com uma carga maior.

Considere os seguintes pontos relacionados ao desempenho do Grav -

  • Para ter um melhor desempenho do Grav, você pode usar PHP opcache e usercache. O opcache funciona bem com PHP 5.4 e usercache funciona mais rápido com PHP 5.5, PHP 5.6 e Zend opcache.

  • o SSD(Solid State Drive) que usa memória flash e não tem partes móveis. Às vezes, o cache é armazenado no cache do usuário ou armazenado como arquivos. Portanto, as unidades SSD podem oferecer melhor desempenho.

  • As máquinas virtuais são a melhor forma de provedores de hospedagem na tecnologia de computação em nuvem. Você pode especificar os recursos sem interagir com o equipamento físico.Native hostingé mais rápido que a máquina virtual. Grav funciona melhor em máquinas virtuais, mas para um desempenho ideal, você pode usar a opção de hospedagem nativa.

  • Grav tem faster memoryem que seu cache usa memória pesada que proporciona melhor desempenho em seu servidor. Em comparação com outras plataformas, ele usa menos quantidade de memória.

  • Grav usa shared hostingno servidor compartilhado para compartilhar as coisas. O compartilhamento de hospedagem está disponível a um custo baixo e às vezes pode tornar as coisas lentas no servidor.

  • Os processadores multicore são usados ​​para lidar com várias tarefas mais rapidamente. Os processadores avançados são melhores do que esses processadores, o que ajuda o usuário a realizar a tarefa.

Cache

Em geral, o cache é um dado armazenado em uma memória cache. O mecanismo de cache torna o Grav mais rápido, no qual o navegador pode obter arquivos do cache em vez do servidor original, economizando tempo e tráfego de rede adicional.

Grav usa a biblioteca Doctrine Cache que suporta o seguinte -

  • Auto (padrão) - usa a opção padrão automaticamente.

  • Arquivo - especifica os arquivos de cache presentes no cache/ pasta.

  • APC

  • XCache

  • Memcache

  • Redis

  • WinCache

Por padrão, Grav usa a configuração automática. Tentará para APC, depois para WinCache, XCache e por último use File.

Tipos de cache

Existem 5 tipos de cache -

  • Cache de configuração YAML em PHP.

  • Cache do Core Grav para objetos de página.

  • Cache Twig de arquivos de template como classes PHP.

  • Cache de imagens para recursos de mídia.

  • Cache de ativos de CSS e jQuery com pipelining.

O cache da configuração YAML armazenada no /cachepasta. O cache de imagem armazena suas imagens no/imagespasta. A opção de configuração para o cache Grav core é armazenada emuser/config/system.yml arquivo como mostrado abaixo -

cache:
   enabled: true
   check:
      method: file
   driver: auto
   prefix: 'g'
  • o enabled A opção ativa o armazenamento em cache definindo-a como verdadeira.

  • o method opção verifica as atualizações em páginas como arquivos ou pasta.

  • o driver opção especifica diferentes tipos de opções de cache, como Auto, Arquivo, APC, XCache, Memcache, Redis ou WinCache.

  • o prefix opção define string de prefixo de cache.

Opções de Memcache

Se você estiver usando o memcached server, então você precisa adicionar algumas opções de configuração extras usando o memcache motorista no user/config/system.yml file. Essas opções podem ser definidas nocache: grupo.

cache:
...
...
   memcache:
      server:localhost
      port: 8080

Opções de Redis

Se você estiver usando redis, então você precisa adicionar algumas opções de configuração extras usando redis motorista no user/config/system.yml file. Essas opções podem ser definidas nocache: grupo.

cache:
...
...
   redis:
   	server:localhost
      port: 8080

O modelo Twig usa seu próprio mecanismo de cache usando o driver twig no user/config/system.yml Arquivo.

twig:
   cache: true
   debug: true
   auto_reload: true
   autoescape: false

Ele tem algumas opções como -

  • cache A opção ativa o armazenamento em cache do galho definindo-o como verdadeiro.

  • debug opção ativa a depuração do galho.

  • auto_reload opção é usada para recarregar as alterações, definindo-o como verdadeiro.

  • autoescape opção é usada para escapar automaticamente das variáveis ​​do galho.

Cache e eventos

Os eventos podem ser usados ​​quando o cache está habilitado. Isso pode ser habilitado para todos os eventos, exceto paraOnPageContentRaw, OnPageProcessed, OnPageContentProcessed, OnTwigPageVariables e OnFolderProcessedeventos. Esses eventos podem ser usados ​​em todas as páginas e pastas e podem ser executados apenas quando os eventos estão em processamento. Esses eventos não podem ser executados após a página ter sido armazenada em cache.