Implemente aplicações de microsserviços com Azion Edge Functions

Adotar uma arquitetura de microsserviços serverless com Azion Edge Functions traz vários benefícios significativos. Primeiramente, melhora a escalabilidade ao permitir que cada serviço escale independentemente com base em sua própria demanda, em vez de escalar toda a aplicação com base na demanda de um único serviço. Isso leva a uma utilização de recursos mais eficiente e a economias de custos.

Além disso, aumenta a flexibilidade ao permitir que cada serviço seja desenvolvido, implantado e atualizado independentemente. Isso significa que mudanças podem ser feitas em um serviço sem impactar os outros, permitindo uma inovação mais rápida e reduzindo o risco de falhas em todo o sistema.


Arquitetura

Representação de uma requisição/resposta em uma configuração de microsserviços

Fluxo de dados

  1. Um usuário envia uma requisição para o Domínio associado a uma edge application. Essa requisição é direcionada para o Azion Traffic Router, que identifica o Edge Node apropriado para processar a requisição.

  2. Nesta etapa, com base na arquitetura de microsserviços, a requisição se ramifica para diferentes serviços em resposta à configuração do Rules Engine. Essa ramificação significa que os serviços podem evoluir independentemente, facilitando ciclos de inovação mais rápidos e rápida implantação de novos recursos.

  3. Edge Functions são invocadas. Cada serviço em uma arquitetura de microsserviços corresponde a diferentes capacidades de negócios. Por exemplo, um serviço de Middleware de Autenticação lida com a autenticação do usuário, um serviço de Carrinho de Compras gerencia operações do carrinho do usuário e um serviço de Cálculo de Frete calcula os custos de envio. Esses serviços são desenvolvidos em JavaScript, implantados e escalados independentemente, proporcionando agilidade e resiliência.

  4. O conteúdo estático é salvo no Edge Storage de onde é recuperado e servido como uma resposta. Isso aproveita a edge computing para garantir menor latência e entrega de conteúdo mais rápida.

  5. Edge SQL lida com operações que envolvem transações de banco de dados. Isso enfatiza ainda mais a separação de responsabilidades, com cada serviço assumindo a propriedade de seu banco de dados específico para garantir baixo acoplamento e alta coesão.

Após esses processos distintos, porém coesos, o conteúdo — processado e montado — é entregue de volta ao cliente. Esse fluxo de dados orientado a microsserviços com edge computing garante operações altamente eficientes, escaláveis e resilientes, oferecendo consideráveis vantagens comerciais.


Componentes

  • Edge Application: configure uma edge application para definir políticas de entrega e cache, criar regras para automatizar atribuições de políticas de cache com base no tipo de conteúdo e determinar como o conteúdo é armazenado em cache.
    • Edge Functions: permite criar aplicações serverless orientadas a eventos, no edge da rede, mais próximas dos usuários.
    • Edge Storage: um serviço de armazenamento escalável e seguro, projetado para integrar armazenamento de objetos com a Azion usando o padrão S3 para operações de objetos.
    • Edge SQL: uma solução SQL nativa de edge projetada para aplicações serverless. É totalmente compatível com ACID e utiliza o dialeto SQLite para fornecer um ambiente de desenvolvimento familiar, facilitando a integração rápida.

Implementação

  1. Crie uma aplicação edge:

    • No Console, crie uma aplicação usando o botão + Create na página inicial.
    • Use a API da Azion para criar uma edge application.
    • Use a Azion CLI para criar e implantar uma edge application.
  2. Crie uma edge function e instancie na aplicação recém-criada.

  3. Crie um domínio e associe-o à edge application:

    • No Console, crie um domínio usando o botão + Create na página inicial.
    • Usando a API da Azion para criar um domínio.
    • Se você criou uma aplicação através de um template, o domínio é criado para você.
  1. Teste e monitore sua edge application.

Documentação relacionada


Contribuidores