-
Title:
Edge Caching - Developing Scalable Apps with Java
-
Description:
-
Outro tópico pesado sobre o qual é bom
-
ter conhecimento é o cache de borda. Para descrevê-lo, vamos dar uma olhada no
-
fluxo de informações do aplicativo do App Engine.
-
Antes de tudo, os usuários que querem usar o aplicativo são
-
conectados ao provedor de Internet. Esse provedor conecta-se
-
ao centro de dados do Google. Após a pesquisa de DNS
-
determinar que o Google hospeda o aplicativo, o Google
-
identifica o centro de dados onde o aplicativo do App Engine é
-
executado e se comunica com o front-end do
-
App Engine. Se o conteúdo for dinâmico, o front-end do
-
App Engine determinará que a instância deverá gerenciar a requisição.
-
Então, estas são as instâncias do App Engine que executam o código
-
do aplicativo. Mas se a requisição for um conteúdo estático
-
como, por exemplo, imagens ou HTML estático, o front-end
-
poderá recuperá-lo dos servidores estáticos.
-
Em ambos os casos, a resposta é retornada ao usuário.
-
Então, essa é uma boa arquitetura. Mas, do jeito que está
-
no momento, todas as requisições devem ser enviadas
-
ao centro de dados que hospeda o aplicativo do App Engine.
-
Seria muito melhor se mais conteúdos pudessem ser servidos
-
diretamente por este centro de dados. Antes de tudo, aliviaria
-
a carga neste centro de dados, mas, o mais importante,
-
é que a resposta seria mais rápida, já que está mais próximo
-
dos usuários. É exatamente para isso que serve o cache de borda.
-
O cache de borda é um cache que fica no
-
centro de dados mais próximo do usuário. Então, sempre que há
-
uma requisição, o resultado pode ser servido diretamente do
-
cache, se estiver disponível nele, em vez de passar pelo
-
segundo centro de dados. Isso significa uma carga menor no segundo
-
centro de dados do aplicativo e respostas mais rápidas para os
-
usuários. Todos saem ganhando. A pergunta é: o que
-
é necessário fazer para usar o cache de borda?
-
Bom, há duas opções. A primeira é
-
configurar o cabeçalho de controle de cache na resposta HTTP.
-
Isso deve ser feito somente se uma requisição subsequente desse
-
tipo retorna o mesmo resultado. A segunda opção é
-
definir a maior quantidade possível do conteúdo como estático.
-
Como o conteúdo estático não muda, ele é ótimo para o
-
cache de borda. Você pode definir quais conteúdos são estáticos nos arquivos de
-
configuração. Uma ótima oportunidade para você dar uma olhada na
-
documentação online. E lembre-se de que, como na maioria das vezes lidando
-
com cache, não há garantias de que o conteúdo será
-
armazenado em cache, mas, quando isso ocorrer, será
-
ótimo tanto para o aplicativo quanto para os usuários.