Uma taxa de acerto de cache baixa aumenta a carga no servidor de origem, eleva os custos de largura de banda e torna a entrega de conteúdo mais lenta. Neste tutorial, você aprende a diagnosticar a causa de uma taxa de acerto de cache baixa e a aplicar a estratégia de otimização adequada pelo console do Alibaba Cloud CDN. Ao final, você terá uma abordagem sistemática para maximizar o desempenho do cache do seu domínio acelerado.
Pré-requisitos
Antes de começar, verifique se você tem:
Adicionado e ativado pelo menos um nome de domínio acelerado no console do CDN.
Permissões para gerenciar configurações de domínios do CDN, como a política
AliyunCDNFullAccess.Acesso à configuração do seu servidor de origem, caso precise modificar cabeçalhos de resposta.
Informações básicas
O Alibaba Cloud CDN armazena conteúdo em cache nos nós de borda, chamados pontos de presença (POPs). Quando um cliente solicita um recurso em cache, o POP o entrega diretamente sem consultar o servidor de origem. Isso reduz o tempo de resposta e a carga na origem. Uma taxa de acerto de cache baixa significa que mais solicitações chegam à origem, aumentando a latência e o custo.
O CDN fornece duas métricas de taxa de acerto de cache:
-
Taxa de acerto de bytes: mede a proporção de dados entregues a partir do cache. Uma taxa maior indica que mais dados vêm do POP em vez da origem.
Taxa de acerto de bytes = (Tráfego entregue pelos POPs L1 - Tráfego de retorno à origem) / Tráfego entregue pelos POPs L1
NotaUma taxa de acerto de bytes menor significa mais tráfego de retorno à origem, o que aumenta os custos de largura de banda e a carga no servidor de origem. Portanto, essa é a métrica principal para monitorar o desempenho do cache.
-
Taxa de acerto de solicitações: mede a proporção de solicitações atendidas pelo cache, independentemente do tamanho do arquivo.
Taxa de acerto de solicitações = Solicitações com acerto de cache / Total de solicitações ao CDN
NotaNa maioria dos cenários, especialmente quando a busca de origem baseada em intervalo está ativada para arquivos grandes, use a taxa de acerto de bytes como métrica principal. A taxa de acerto de solicitações ajuda a entender quantas requisições são atendidas pelo cache, independentemente do tamanho do arquivo.
Visualize a taxa de acerto de cache
Método 1: Usar o console (recomendado)
Use o console para verificações rápidas e pontuais da sua taxa de acerto de cache. O console do CDN exibe a taxa de acerto de bytes por meio de dois recursos de monitoramento:
Monitoramento de recursos: visualize tendências da taxa de acerto de cache em períodos mais longos, como 30 dias. Os dados estão disponíveis com granularidade de 5 minutos e atraso de aproximadamente 15 minutos. Para mais informações, consulte Resource monitoring.
Monitoramento em tempo real: acompanhe a taxa de acerto de cache em tempo real em períodos mais curtos, como 1 hora. Os dados estão disponíveis com granularidade de 1 minuto e atraso de aproximadamente 3 minutos. Para mais informações, consulte Real-time monitoring.
Método 2: Chamar operações de API
Use operações de API se precisar integrar o monitoramento de acertos de cache a painéis, scripts ou sistemas de alerta automatizados.
|
Operação de API |
Descrição |
|
Recupera dados da taxa de acerto de bytes para um domínio acelerado. Granularidade padrão (5 minutos ou horária). Consulta dados dos últimos 90 dias. |
|
|
Obtém dados da taxa de acerto de solicitações para um domínio acelerado. Granularidade padrão (5 minutos ou horária). Consulta dados dos últimos 90 dias. |
|
|
Fornece dados da taxa de acerto de bytes em tempo real com granularidade de 1 minuto para um domínio acelerado. Consulta dados dos últimos 7 dias. |
|
|
Disponibiliza dados da taxa de acerto de solicitações em tempo real com granularidade de 1 minuto para um domínio acelerado. Consulta dados dos últimos 7 dias. |
|
|
Retorna URLs de download de log para um domínio acelerado. Consulta logs dos últimos 90 dias. |
Aumentar a taxa de acerto de cache
Comece verificando seus logs do CDN para identificar a causa mais comum de falhas de cache no seu domínio. Em seguida, aplique a estratégia correspondente na tabela abaixo.
|
Estratégia |
Fatores e cenários |
Método de configuração |
|
Pré-buscar recursos populares |
Fatores: Antes de eventos em grande escala ou lançamentos de novas versões, recursos ainda não armazenados em cache nos POPs acionam buscas na origem, reduzindo a taxa de acerto de cache.Cenários: Para eventos promocionais, pré-aqueça recursos estáticos da página do evento nos POPs antes do início. Em lançamentos de aplicativos, pré-aqueça pacotes de instalação antes do lançamento para que as solicitações de download sejam atendidas pelos POPs. |
Use o recurso de pré-busca para pré-aquecer recursos nos POPs. Para mais informações, consulte Quick start. |
|
Configure um período de expiração de cache adequado |
Fatores: Nenhuma política de cache configurada no CDN ou TTL configurado muito curto. Todas as solicitações de usuários chegam à origem ou os recursos em cache expiram frequentemente.Cenários: Você publicou conteúdo estático na origem, mas os POPs não o armazenam em cache, ou o conteúdo em cache expira rapidamente.Orientação: Para arquivos estáticos raramente atualizados (imagens, downloads de aplicativos), defina o TTL para um mês ou mais. Para arquivos estáticos atualizados frequentemente (JS, CSS), defina o TTL conforme suas necessidades de negócio. Para arquivos dinâmicos (PHP, JSP, ASP), defina o TTL como 0 segundos para desativar o cache.Nota: Definir um TTL longo pode entregar conteúdo desatualizado. Use versionamento de arquivos (como anexar um número de versão ao nome do arquivo) ou limpe o cache após atualizar o conteúdo. |
|
|
Ignorar parâmetros de URL na chave de cache |
Fatores: URLs com diferentes parâmetros de consulta que apontam para o mesmo recurso acionam entradas de cache separadas e buscas na origem.Cenários: Você deseja que diferentes URLs com parâmetros distintos (como IDs de rastreamento ou carimbos de data/hora) acessem o mesmo recurso em cache. |
|
|
Configure busca de origem baseada em intervalo para arquivos grandes |
Fatores: Quando os usuários baixam apenas uma parte de um arquivo grande (como um instalador ou vídeo), o POP busca o arquivo inteiro na origem sem a busca baseada em intervalo. O POP baixa mais dados da origem do que entrega aos usuários, reduzindo a taxa de acerto de bytes.Cenários: Usuários baixando pacotes de instalação de aplicativos ou transmitindo conteúdo de vídeo. |
|
|
Lidar com cabeçalhos de não-cache da origem |
Fatores: O servidor de origem retorna cabeçalhos de resposta de não-cache (como |
Método 1 (recomendado): Modifique a configuração do servidor de origem para remover cabeçalhos de não-cache das respostas de recursos estáticos e defina uma duração de cache razoável (por exemplo, |
|
Outras estratégias de otimização |
Além das estratégias acima, o Alibaba Cloud CDN oferece recursos adicionais de otimização para cenários específicos:Redirecionamento 302 central: Encaminha solicitações de usuários para o nó de origem ideal por meio de um redirecionamento 302 de um servidor de despacho central.Redirecionamento 302 de borda: Encaminha solicitações de usuários para a origem ideal mais próxima por meio de um redirecionamento 302 do POP de borda.Cache compartilhado: Permite que vários nomes de domínio acelerados sob a mesma conta Alibaba Cloud compartilhem recursos de cache nos POPs. Quando vários nomes de domínio (como A.example.com e B.example.com) requerem os mesmos arquivos JS ou CSS e o conteúdo da origem é idêntico, o cache compartilhado permite que esses domínios compartilhem uma única cópia em cache, melhorando a taxa de acerto. Ao adicionar um novo site, basta alinhar seus caminhos de recursos com a estrutura de recursos do domínio acelerado existente. |
Engenheiros de pós-venda do Alibaba Cloud configuram o redirecionamento 302 central, o redirecionamento 302 de borda e a agregação de busca de origem. Entre em contato com o suporte para ativar esses recursos.Cache compartilhado: No console do CDN, acesse Domain Names > clique em no nome do domínio alvo > Cache > Shared Cache. Clique em Modify, selecione um nome de domínio alvo na lista de domínios acelerados online sob sua conta (é possível pesquisar) e confirme. Após a configuração, o nome de domínio atual compartilha o cache com o nome de domínio selecionado e se funde ao seu caminho de busca de origem. Para remover a configuração, clique em Delete Configuration e confirme.Nota: Garanta que os nomes de domínio que compartilham cache entreguem conteúdo idêntico. O cache compartilhado pode expor o conteúdo de um domínio aos usuários de outro domínio se os caminhos se sobrepuserem. |
Para reverter qualquer alteração de configuração de cache descrita na tabela acima, retorne à mesma página de configurações no console do CDN e exclua ou desative a regra.
Visualize o status de acerto de cache nos logs
Os logs de solicitação do CDN registram o status de acerto de cache para cada solicitação.
O campo de status de acerto de cache nos logs indica um dos seguintes valores:
HIT: a solicitação foi atendida pelo cache do POP.
MISS: a solicitação não foi atendida pelo cache do POP e foi buscada na origem.
O status de acerto reflete apenas o POP L1. Se uma solicitação falhar no cache do POP L1, mas obtiver acerto no cache do POP L2, o log ainda mostrará MISS.
Exemplo de entrada de log:
[26/Jun/2019:10:38:19 +0800] 192.168.53.146 - 1542 "-" "GET http://example.aliyundoc.com/index.html" 200 191 2830 MISS "Mozilla/5.0 (compatible; AhrefsBot/5.0; +http://example.com/robot/)" "text/html"
Neste exemplo, o status MISS indica que o recurso não estava armazenado em cache no POP L1. Se seus logs mostrarem uma alta proporção de entradas MISS, consulte as estratégias na seção Aumentar a taxa de acerto de cache para identificar e resolver a causa.
Você também pode chamar a operação de API DescribeCdnDomainLogs para recuperar URLs de download de log para um domínio acelerado.
Verifique a otimização
Após aplicar uma estratégia de otimização, verifique se a taxa de acerto de cache melhorou:
Aguarde a propagação do cache. As alterações na configuração de cache geralmente entram em vigor dentro de 5 minutos. Se você estendeu o TTL do cache, talvez seja necessário limpar o conteúdo antigo em cache para que as alterações sejam aplicadas imediatamente.
Verifique a taxa de acerto de cache. Use o recurso Real-time monitoring no console do CDN ou chame
DescribeDomainRealTimeByteHitRateDatapara verificar a taxa de acerto de bytes atual. Compare os resultados com sua linha de base antes da otimização.Revise os logs. Verifique as entradas de log recentes para observar uma proporção maior de entradas com status HIT. Um CDN bem otimizado normalmente atinge uma taxa de acerto de bytes de 80% ou mais para cargas de trabalho com predominância de conteúdo estático.