1 of 20
2 of 20
3 of 20
4 of 20
5 of 20
6 of 20
7 of 20
8 of 20
9 of 20
10 of 20
11 of 20
12 of 20
13 of 20
14 of 20
15 of 20
16 of 20
17 of 20
18 of 20
19 of 20
20 of 20

doc

Edge Caching

Edge Caching é um módulo de Edge Application que reduz latência e permite uma alta taxa de transferência para suas aplicações por meio da rede mundial de edge nodes da Azion.

  1. Como funciona
  2. Cache Settings
  3. Browser Cache Settings
  4. CDN Cache Settings
  5. L2 Caching
  6. Slice Settings
  7. Cache de métodos HTTP
  8. Stale Cache
  9. Advanced Cache Key
    9.1. Opções de Cache by Query String
    9.2. Opções de Cache by Cookie
    9.3. Adaptive Delivery

1. Como funciona

O Edge Caching é uma funcionalidade padrão disponibilizada para todas Edge Applications na Azion, garantindo performance e baixa latência. Ele é composto por uma arquitetura de proxy reverso, por meio da qual seus usuários se conectam nos Edge Nodes de nossa rede global altamente distribuída. O Edge Caching pode realizar caching de seu conteúdo e, além disso, ampliar sua versatilidade com o add-on L2 Caching.

Quando um usuário requisita um conteúdo na internet, seu navegador ou aplicação inicia o processo pela resolução de DNS, a fim de traduzir o domínio solicitado para um endereço IP. Ao utilizar a Azion, você aponta o DNS de sua aplicação web para um endereço gerado ao criar um Domain na Azion.

A Azion seleciona o Edge Node mais próximo do usuário utilizando o seu Software-Defined Networking (SDN) Router, reduzindo latência e aumentando a velocidade da transferência do conteúdo.


2. Cache Settings

Este serviço é responsável por criar configurações de cache, contendo diversas funcionalidades que ampliam a forma como o conteúdo é entregue.

O Cache Settings trabalha com duas versões:

  1. A primeira versão foca em conteúdos estáticos, ou seja, não é necessário que você tenha o serviço de Application Acceleration habilitado.
  2. A segunda versão, que emprega o Application Acceleration, estende inúmeras opções de configuração na interface de Cache Settings.

Para criar ou editar uma configuração de Cache Settings, siga os seguintes passos:

  1. Acesse o Real-Time Manager.
  2. Selecione Products menu > Edge Application.
  3. Clique no botão de comando Add Application para criar uma nova Edge Application, ou selecione uma das existentes na lista.
  4. Selecione a aba Cache Settings.
  5. Edite ou crie uma configuração de Cache Settings.
  6. Clique no botão Save para salvar a configuração.

3. Browser Cache Settings

O Browser Cache Settings determina a quantidade de tempo que o conteúdo fica em cache no navegador de internet. É possível configurar a Edge Application para:

Honor Origin Cache Headers Override Cache Settings No cache
Este recurso respeita as definições de cache enviadas por seus servidores de origem por meio de cabeçalhos HTTP (Cache-Control and Expires), enviando os mesmos cabeçalhos para o navegador web. É a funcionalidade que sobrescreve o cache do servidor de origem, configurando o time-to-live (TTL) manualmente. Essa configuração envia uma diretriz de no-cache ao browser, indicando que a resposta precisa ser validada com os servidores de origem antes de cada uso.

4. CDN Cache Settings

CDN Cache Settings é a quantidade de tempo que as Edge Applications da Azion realizam cache do conteúdo. É possível configurar a Edge Application para:

Honor Origin Cache Headers Override Cache Settings
Este recurso respeita as definições de cache enviadas por seus servidores de origem por meio de cabeçalhos HTTP (Cache-Control and Expires), enviando os mesmos cabeçalhos para o navegador web. É a funcionalidade que sobrescreve o cache do servidor de origem configurando o TTL manualmente.

5. L2 Caching

Essa funcionalidade somente estará disponível caso o serviço esteja ativado. Para ativar L2 Caching, contate nossa equipe de vendas.

L2 Caching é uma camada adicional de cache entre a edge da Azion e sua origem que ajuda a reduzir ainda mais a carga na sua infraestrutura.

Ao acessar suas aplicações na Azion, seu usuário acessa nossa rede altamente distribuída e capaz de realizar edge caching. Ao ativar o L2 Caching em suas edge applications, você passa a contar com uma segunda camada de cache que será responsável por alimentar o edge, mantendo o seu conteúdo em cache pelo tempo que você determinar.

Ao utilizar o L2 Caching como uma camada adicional de cache, é necessário incluir uma configuração por região, por exemplo: sa-brazil para o Brasil, na-united-states para os EUA etc, dependo da região.

O L2 Caching foi desenhado especialmente para objetos que podem permanecer um longo período de tempo em cache. Assim, você só poderá ativá-lo em políticas de cache com TTL igual ou superior a 3 segundos, sendo por padrão o TTL de 60 segundos.

Sempre que necessário, você pode utilizar o Real-Time Purge para expirar seu conteúdo do L2 Caching antes do tempo previsto de TTL. Lembre-se de purgar primeiro no L2 e somente depois no Edge Caching. Isso evita a realimentação do edge com conteúdo desatualizado do L2.

Atenção: não é possível utilizar a configuração Honor Origin para CDN Cache. É necessário colocar um TTL para sobrescrever o CDN cache.

Para utilizar o módulo de L2 Caching, siga os seguintes passos:

  1. Acesse o Real-Time Manager.
  2. Selecione Products Menu > Edge Application.
  3. Selecione a Edge Application na qual deseja utilizar o módulo.
  4. Selecione a aba Main Settings, caso ainda não esteja selecionada.
  5. No final da seção Edge Application Modules, ative a chave L2 Caching.
  6. Selecione a aba Cache Settings.
  7. Para gerenciar as configurações da camada de L2 Caching, clique no botão Add Cache Settings para criar uma nova configuração de cache, ou selecione uma das existentes na lista Cache Settings List para editá-la.
  8. Configure o campo Default TTL (seconds) para um valor maior ou igual a 3 segundos.
  9. Habilite o botão L2 Caching.
  10. Clique no botão Save para salvar a sua configuração.

6. Slice Settings

Slice é uma funcionalidade para Edge Applications que processa grandes quantidades de dados de forma mais efetiva, reduzindo a latência e economizando largura de banda.

Ao habilitar essa funcionalidade, os arquivos podem estar fragmentados. Tais fragmentos são entregues gradativamente ao usuário final de acordo com o consumo de dados, evitando uma transferência abrupta de dados que poderia ser interrompida pelo usuário. A funcionalidade Slice armazena dados sob demanda no momento em que o usuário os solicita, iniciando a operação de cache.

Nota: ao ativar a funcionalidade Slice, o cache key atual será ignorado e um novo será formado.

Essa funcionalidade trabalha com um slice-range padrão de 1024kB. Caso você deseje modificar o slice-range, contate nossa equipe de vendas.

Dica: inicialmente, a funcionalidade Slice trabalha com a camada Edge Caching, mas não se restringe a ela. Na seção Slice Settings, também é possível ativar o slicing na camada L2 Caching marcando a caixa de seleção L2, desde que o L2 Caching já esteja ativado.

Para ativar a funcionalidade Slice Settings, siga os seguintes passos:

  1. Acesse o Real-Time Manager.
  2. No canto superior esquerdo da página, selecione Products menu > Edge Application. A página Edge Applications aparece com uma tabela contendo os aplicativos existentes.
  3. Na tabela, selecione uma Edge Application ou crie uma nova aplicação.
  4. Selecione a guia Cache Settings. A seção Cache Settings List mostra uma tabela contendo as configurações de cache.
  5. Selecione a linha de Cache Setting na qual você deseja ativar Slice Settings.
  6. Na seção Slice Settings, ative a chave Slice Configuration. Por padrão, a configuração Edge Caching será selecionada automaticamente.
  7. Se você tiver o módulo L2 Caching, marque a caixa de seleção L2 Caching para habilitar esta opção.

Nota: se você não tiver o módulo, a caixa de seleção L2 Caching não estará visível na seção Slice Settings. Para habilitar L2 Caching, contate nossa equipe de vendas.


7. Cache de métodos HTTP

Por padrão, a Azion armazena em cache apenas as solicitações GET e HEAD. Para habilitar o método OPTIONS, você deve ativar a botão de Cache Options dentro das configurações de sua Edge Application no Real-Time Manager (RTM).

O cache HTTP armazena uma resposta vinculada à uma solicitação e a reutiliza para solicitações subsequentes.

Você pode ativar a chave Enable caching for POST, permitindo que a Azion armazene em cache as solicitações POST; a chave Enable caching for OPTIONS permite que a Azion armazene em cache as solicitações de OPTIONS. Essa duas opções de cache implicam no uso do corpo da solicitação como parte da cache key.

Para habilitar o recurso Cache OPTIONS ou Cache POST, você deve ter o produto Application Acceleration ativado.


8. Stale Cache

Quando o cache da sua aplicação passa da data de expiração, ele se torna stale (obsoleto) e o servidor busca na origem a versão mais atualizada. Essa nova versão, com data de expiração atualizada, sobrescreve a antiga (stale).

No entanto, o servidor pode encontrar problemas e não conseguir buscar a versão mais atualizada da sua aplicação na origem. Nesses casos, ele entrega a última versão dela, mesmo expirada. Esse comportamento é conhecido como Stale Cache.

Stale Cache é uma configuração padrão do módulo Edge Caching. No entanto, se sua Edge Application precisar, é possível desativá-la.

Atenção: é importante lembrar que ao desativar o Stale Cache, caso o servidor não consiga atualizar o cache na origem, ele retornará um erro ao usuário, interrompendo a sessão.


9. Advanced Cache Key

Você pode utilizar a Azion para entregar seu conteúdo dinâmico ou estático. Mesmo a parte dinâmica de um site muitas vezes pode ser cacheada para um perfil de usuários, agrupado de acordo com as necessidades específicas de sua aplicação, como cidade, perfil de navegação ou perfil de compras.

Por padrão, a Azion considera cada URL como um objeto distinto no cache. O módulo Advanced Cache Key permite que seu conteúdo dinâmico seja armazenado em cache nos edge nodes da Azion. Ao habilitar essa configuração, você pode criar regras avançadas de cache key baseadas em Query String ou Cookies para definir a segmentação do conteúdo em sua aplicação.

Para ativar essa funcionalidade, siga os passos:

  1. Acesse o Real-Time Manager.
  2. No canto superior esquerdo da página, selecione Products menu > Edge Application.
  3. Selecione uma aplicação ou crie uma nova.
  4. Para habilitar o módulo de Application Acceleration, clique na aba Main Settings e selecione a opção Application Acceleration na seção Modules.
  5. Após habilitar o módulo, clique na aba Cache Settings.
  6. Adicione ou edite uma configuração customizada de cache.
  7. Na seção Advanced Cache Key, defina sua configuração customizada de Cache by Query String e de Cache by Cookie.
  8. Na aba Rules Engine, adicione ou edite uma regra de sua lista em Request Phase a fim de definir o comportamento para um ou mais paths.
  9. No behavior Set Cache Policy, selecione a configuração customizada de cache.

9.1. Opções de Cache by Query String

Na Azion, você define como deseja que o conteúdo seja armazenado em cache de acordo com variações de Query String em suas URLs:

  • Content does not vary by Query String (Improves Caching): define que a cache key deve ignorar a Query String. Ou seja, duas URLs distintas apenas pela variação da Query String serão consideradas como o mesmo objeto em cache. Por exemplo, http://seudominio.com/path?queryA e http://seudominio.com/path?queryB irão entregar o mesmo conteúdo do cache para seus usuários.

  • Content varies by some Query String fields (Allowed rules): você pode listar quais campos da Query String devem ser considerados para diferenciar os objetos no cache da Azion. Todos os demais campos serão ignorados. Por exemplo, se você listar o campo cidade, as URLs http://seudominio.com/path?cidade=A&nome=X e http://seudominio.com/path?cidade=A&nome=Y serão consideradas como um único objeto em cache, enquanto as URLs http://seudominio.com/path?cidade=A&nome=X e http://seudominio.com/path?cidade=B&nome=X serão consideradas como objetos distintos.

  • Content varies by Query String, except for some fields (Blacklist): você pode listar quais campos da Query String devem ser ignorados ao diferenciar os objetos em cache. Todos os demais campos serão considerados. Por exemplo, se você listar o campo random, as URLs http://seudominio.com/path?cidade=A&random=123 e http://seudominio.com/path?cidade=B&random=123 serão consideradas objetos distintos em cache, enquanto http://seudominio.com/path?cidade=A&random=123 e http://seudominio.com/path?cidade=A&random=456 serão consideradas como o mesmo objeto em cache.

  • Content varies by all Query String fields: define que a cache key deve considerar todos os campos da Query String. Ou seja, duas URLs distintas pela variação da Query String serão consideradas como dois objetos distintos em cache. Por exemplo, http://seudominio.com/path?queryA e http://seudominio.com/path?queryB serão armazenadas como objetos distintos no cache da Azion.

Dica: para aumentar a eficiência do cache, você pode ativar a funcionalidade Query String Sort. Se ativada, ela ordena todos os campos da query string, fazendo com que a posição dos campos seja irrelevante na definição da cache key. Se a posição dos campos é relevante para diferenciar o seu conteúdo, você deve deixar a funcionalidade desativada.

Observação: por padrão, a Azion armazena apenas as requisições GET e HEAD. Ao marcar a opção Enable caching for POST, você permite que a Azion também faça o cache de requisições POST. O cache de requisições POST implica o uso do corpo de requisições como parte da cache key.

Você pode também distinguir os objetos no cache da Azion por nome/valor de cookies.

  • Content does not vary by Cookies (Improves Caching): não leva em consideração os cookies; ou seja, considera apenas a URL para diferenciar objetos no cache da Azion.

  • Content varies by some Cookies (Allowed rules): você pode listar o nome dos cookies que sua aplicação utiliza para diferenciar os objetos em cache. Todos os demais cookies serão ignorados, permitindo segmentar seu conteúdo por perfis de usuários e outras configurações. Esta é a opção mais recomendada se você utiliza cookies para gerenciar sessões de usuários.

  • Content varies by Cookies, with the exception of a few (Blocklist): você pode listar o nome dos cookies que deseja ignorar na definição da cache key, considerando todos os cookies com exceção dos listados.

  • Content varies by all Cookies: além da URL, considera todos os cookies para diferenciar objetos no cache da Azion.

Dica: utilize essa funcionalidade para segmentar seu conteúdo por perfil de usuário, por sessão de navegação, por região de acesso, ou conforme sua necessidade de segmentação de conteúdo.

9.3. Adaptive Delivery

A funcionalidade Adaptive Delivery detecta o grupo de dispositivos do usuário e permite configurar como o a Azion deve armazenar o seu conteúdo em cache. Essa funcionalidade requer o produto Edge Application.

  • Content does not vary by Device Groups (Improves Caching): escolha essa opção para entregar a mesma versão do conteúdo, independentemente da detecção do dispositivo.

  • Content varies by some Device Groups (Allowed rules): escolha essa opção para que a Azion mantenha variações baseadas em dispositivos de seus objetos no cache.


Não encontrou o que procurava? Abra um ticket.