Modelo de app da Web de três camadas

Este guia ajuda você a entender o modelo de aplicativo app da Web de três níveis, que ajuda a implantar rapidamente uma pilha de aplicativos da Web de três níveis noGoogle Cloud.

O app da Web de três camadas inclui o seguinte:

  • Balanceadores de carga opcionais que processam:
    • Tráfego de entrada.
    • Distribuição de tráfego para o serviço de front-end.
  • Apps conteinerizados implantados como serviços sem servidor:
    • Um front-end baseado na Web.
    • Uma camada de API no nível intermediário.
  • Um back-end de banco de dados SQL.
  • Um cache na memória que atende dados acessados com frequência.

Produtos usados

O aplicativo contém os seguintes produtos Google Cloud :

  • Cloud Load Balancing (opcional): um serviço que oferece balanceamento de carga escalonável e de alto desempenho no Google Cloud.
  • Cloud Run: um serviço totalmente gerenciado que permite criar e implantar apps conteinerizados sem servidor. OGoogle Cloud lida com o escalonamento e outras tarefas de infraestrutura para que você possa se concentrar na lógica de negócios do seu código.
  • Cloud SQL: um banco de dados PostgreSQL totalmente gerenciado em Google Cloud. Isso libera você das tarefas de administração do banco de dados para que você tenha mais tempo para gerenciar seus dados.
  • Memorystore for Redis: um serviço que fornece armazenamento em cache de aplicativos usando um serviço na memória escalonável, seguro e altamente disponível para Redis. Isso ajuda a fornecer acesso de baixa latência e alta capacidade de processamento para dados acessados com frequência.

Arquitetura

A imagem a seguir mostra os componentes e as conexões no aplicativo:

Um aplicativo da Web de três camadas na tela de design. O aplicativo inclui componentes de front-end, back-end e banco de dados.

Confira a seguir o fluxo de processamento de solicitações do aplicativo:

  1. Um front-end do Cloud Load Balancing recebe solicitações externas e distribui o tráfego para o back-end do Cloud Load Balancing.
  2. O back-end do Cloud Load Balancing distribui o tráfego para o serviço do Cloud Run.
  3. Um serviço de front-end do Cloud Run baseado na Web renderiza um cliente HTML no navegador do usuário.
  4. O serviço de front-end envia solicitações para uma camada de API, que também é implantada como um serviço do Cloud Run.
  5. O Memorystore para Redis armazena em cache e disponibiliza dados lidos com frequência.
  6. A camada de API envia solicitações que não podem ser atendidas pelo cache do Redis na memória para um banco de dados do Cloud SQL.

A seguir