Escolher o evento para acionar a função - Amazon CloudFront

Escolher o evento para acionar a função

Ao decidir qual evento do CloudFront você deseja usar para acionar uma função do Lambda, considere:

Quero que o CloudFront armazene em cache objetos que são alterados por uma função do Lambda

Para armazenar em cache um objeto que foi modificado por uma função do Lambda para que o CloudFront possa fornecer o objeto no local da borda na próxima vez que ele for solicitado, use os eventos de solicitação da origem ou de resposta da origem.

Isso reduz a carga na origem, a latência de solicitações subsequentes e o custo de chamar o Lambda@Edge em solicitações subsequentes.

Por exemplo, para adicionar, remover ou alterar os cabeçalhos dos objetos retornados pela origem e quiser que o CloudFront armazene o resultado em cache, use o evento de resposta da origem.

Quero que a função seja executada em todas as solicitações

Se quiser executar a função para todas as solicitações que o CloudFront recebe para a distribuição, use os eventos de solicitação do visualizador ou de resposta do visualizador.

Os eventos de solicitação e de resposta da origem ocorrem somente quando um objeto solicitado não é armazenado em cache em um ponto de presença, e o CloudFront encaminha uma solicitação para a origem.

Quero que a função altere a chave de cache

Para alterar um valor que está sendo usado como base para o armazenamento em cache, use o evento de solicitação do visualizador.

Por exemplo, se uma função altera o URL para incluir a abreviação de um idioma no caminho (por exemplo, porque o usuário escolheu o idioma em uma lista suspensa), use o evento de solicitação do visualizador:

  • URL na solicitação do visualizador: https://example.com/en/index.html

  • URL quando a solicitação é proveniente de um endereço IP na Alemanha: https://example.com/de/index.html

O evento de solicitação do visualizador também pode ser usada se você estiver armazenando em cache com base em cookies ou cabeçalhos de solicitação.

nota

Se a função alterar cookies ou cabeçalhos, configure o CloudFront para encaminhar a parte aplicável da solicitação à origem. Para obter mais informações, consulte os tópicos a seguir.

A função afeta a resposta da origem

Para alterar a solicitação de maneira a afetar a resposta da origem, use o evento de solicitação de origem.

Normalmente, a maioria dos eventos de solicitação do visualizador não é encaminhada para a origem. O CloudFront responde a uma solicitação com um objeto que já está no cache da borda. Se a função alterar a solicitação com base em um evento de solicitação de origem, o CloudFront armazenará em cache a resposta à solicitação de origem alterada.