Amazon Web Services - CloudFront

CloudFront é um CDN (Content Delivery Network). Ele recupera dados do bucket do Amazon S3 e os distribui para vários locais de datacenter. Ele entrega os dados por meio de uma rede de centros de dados chamadaedge locations. O ponto de presença mais próximo é roteado quando o usuário solicita dados, resultando em menor latência, baixo tráfego de rede, acesso rápido aos dados, etc.

Como o AWS CloudFront fornece o conteúdo?

O AWS CloudFront oferece o conteúdo nas etapas a seguir.

Step 1 - O usuário acessa um site e solicita o download de um objeto como um arquivo de imagem.

Step 2 - DNS roteia sua solicitação para o ponto de presença do CloudFront mais próximo para atender à solicitação do usuário.

Step 3- No ponto de presença, o CloudFront verifica seu cache para os arquivos solicitados. Se encontrado, ele o retorna ao usuário; caso contrário, faça o seguinte -

  • O First CloudFront compara a solicitação com as especificações e a encaminha para o servidor de origem aplicável para o tipo de arquivo correspondente.

  • Os servidores de origem enviam os arquivos de volta para o ponto de presença do CloudFront.

  • Assim que o primeiro byte chega da origem, o CloudFront começa a encaminhá-lo para o usuário e adiciona os arquivos ao cache no ponto de presença para a próxima vez quando alguém solicitar novamente o mesmo arquivo.

Step 4- O objeto agora está em um cache de borda por 24 horas ou pela duração fornecida nos cabeçalhos de arquivo. O CloudFront faz o seguinte -

  • O CloudFront encaminha a próxima solicitação do objeto para a origem do usuário para verificar se a versão do ponto de presença está atualizada ou não.

  • Se a versão do ponto de presença for atualizada, o CloudFront a entrega ao usuário.

  • Se a versão do ponto de presença não for atualizada, a origem envia a versão mais recente ao CloudFront. O CloudFront entrega o objeto ao usuário e armazena a versão mais recente no cache naquele ponto de presença.

Recursos do CloudFront

Fast- A ampla rede de pontos de presença e cópias do CloudFront em cache de conteúdo próximo aos usuários finais que resulta na redução da latência, altas taxas de transferência de dados e baixo tráfego de rede. Tudo isso torna o CloudFront rápido.

Simple - É fácil de usar.

Can be used with other AWS Services - O Amazon CloudFront foi projetado de forma que possa ser facilmente integrado a outros serviços da AWS, como Amazon S3, Amazon EC2.

Cost-effective - Usando o Amazon CloudFront, pagamos apenas pelo conteúdo que você entrega por meio da rede, sem quaisquer taxas ocultas e sem taxas iniciais.

Elastic- Usando o Amazon CloudFront, não precisamos nos preocupar com manutenção. O serviço responde automaticamente se alguma ação for necessária, caso a demanda aumente ou diminua.

Reliable - O Amazon CloudFront é construído na infraestrutura altamente confiável da Amazon, ou seja, seus pontos de presença redirecionarão automaticamente os usuários finais para o próximo local mais próximo, se necessário em algumas situações.

Global - O Amazon CloudFront usa uma rede global de pontos de presença localizados na maioria das regiões.

Como configurar o AWS CloudFront?

O AWS CloudFront pode ser configurado usando as etapas a seguir.

Step 1 - Faça login no console de gerenciamento da AWS usando o seguinte link - https://console.aws.amazon.com/

Step 2- Faça upload do Amazon S3 e escolha cada permissão pública. (Como fazer upload de conteúdo para o intervalo S3 é discutido no capítulo 14)

Step 3 - Crie uma distribuição da Web do CloudFront usando as seguintes etapas.

  • Abra o console do CloudFront usando o seguinte link - https://console.aws.amazon.com/cloudfront/

  • Clique no botão Primeiros passos na seção da web de Selecione um método de entrega para sua página de conteúdo.

  • Create Distributiona página abre. Escolha o bucket do Amazon S3 criado no nome de domínio de origem e deixe os campos restantes como padrão.

  • A página Configurações de comportamento do cache padrão é aberta. Mantenha os valores padrão e vá para a próxima página.

  • Uma página de configurações de distribuição é aberta. Preencha os detalhes de acordo com sua necessidade e clique no botão Criar Distribuição.

  • A coluna Status muda de Em andamento para Implementado. Habilite sua distribuição selecionando a opção Habilitar. Levará cerca de 15 minutos para que o nome de domínio esteja disponível na lista de Distribuições.

Teste os links

Depois de criar a distribuição, o CloudFront sabe a localização do servidor Amazon S3 e o usuário conhece o nome de domínio associado à distribuição. No entanto, também podemos criar um link para o conteúdo do bucket do Amazon S3 com esse nome de domínio e ter o CloudFront para servi-lo. Isso ajuda a economizar muito tempo.

A seguir estão as etapas para vincular um objeto -

Step 1- Copie o seguinte código HTML para um novo arquivo e escreva o nome de domínio que o CloudFront atribuiu à distribuição no lugar do nome de domínio. Escreva um nome de arquivo de bucket do Amazon S3 no lugar de object-name.

<html> 
   <head>CloudFront Testing link</head> 
   <body> 
      <p>My Cludfront.</p> 
      <p><img src = "http://domain-name/object-name" alt = "test image"/> 
   </body> 
</html>

Step 2 - Salve o texto em um arquivo com .html extensão.

Step 3- Abra a página da web em um navegador para testar os links e ver se estão funcionando corretamente. Caso contrário, verifique as configurações.