Criar uma arquitetura orientada por eventos com a SP-API

O padrão de arquitetura orientada a eventos é um modelo de design de arquitetura assíncrona, que usa eventos para conectar componentes independentes e desacoplados de um sistema.

O padrão de arquitetura orientado a eventos é um modelo de design de arquitetura assíncrona. Essa arquitetura usa eventos para conectar componentes independentes e desacoplados de um sistema. Esses componentes geralmente são microsserviços que executam tarefas específicas. Em vez de um aplicativo monolítico contendo toda a lógica, uma arquitetura orientada a eventos utiliza pequenos componentes que geram e reagem aos eventos. Esses eventos representam mudanças de estado ou outros tipos de atualizações.

Os principais elementos da arquitetura orientada a eventos são produtores e consumidores. Um produtor gera um evento que é processado por um ou mais consumidores para executar tarefas diferentes. Normalmente, um aplicativo consiste em vários produtores e consumidores. Juntas, essas tarefas realizam um caso de uso comercial.

Arquiteturas orientadas por eventos podem melhorar o desempenho de seus aplicativos ao desacoplar componentes e reduzir o ciclo de vida de desenvolvimento. Você pode usar o API de notificações para implementar esse modelo de design.

Benefícios da arquitetura orientada por eventos

A criação de uma arquitetura orientada por eventos beneficia o desempenho, o custo, a confiabilidade, a escalabilidade e o ciclo de vida de desenvolvimento de um aplicativo. Exemplos desses benefícios incluem:

  • Os aplicativos orientados por eventos têm melhor desempenho quando reagem a eventos em tempo real. Isso se compara aos esquemas que extraem dados de forma programada, o que gera atrasos.

  • Reagir a eventos reduz a quantidade de trabalho desnecessário, o que ajuda a reduzir custos ao economizar recursos e uso.

  • O padrão de chamada da arquitetura orientada por eventos reduz a carga em serviços de terceiros. Cargas reduzidas removem o gargalo do limite de taxa e reduzem os erros de aceleração.

  • Os componentes desacoplados podem escalar e falhar de forma independente. Os componentes desacoplados podem se adaptar à demanda com base nas necessidades individuais, o que pode reduzir o impacto das falhas.

  • O ciclo de vida de desenvolvimento diminui quando a arquitetura é mais simples, o que facilita a adaptação a novos casos de uso.

Notificações e arquitetura orientada por eventos

A API do parceiro de vendas (SP-API) fornece a API de notificações, que permite que os usuários criem uma arquitetura orientada a eventos. Com a API de notificações, você pode se inscrever em diferentes tipos de eventos e receber notificações sobre mudanças relevantes em seus negócios na Amazon.

Os casos de uso cobertos pelos vários tipos de notificação incluem: alterações no status do anúncio, atualizações de pedidos, ativações de promoções de taxas, conclusão do processamento de relatórios e alterações na definição do produto.

Caso de usoTipo de notificação
Gerenciamento de pedidosORDER_STATUS_CHANGE
Gerenciamento e envio de ofertasLISTINGS_ITEM_STATUS_CHANGE
LISTINGS_ITEM_ISSUES_CHANGE
PRODUCT_TYPE_DEFINITIONS_CHANGE
Preço de produtosANY_OFFER_CHANGED
B2B_ANY_OFFER_CHANGED
PRICING_HEALTH
Tarifas promocionaisFEE_PROMOTION
Logística da AmazonFBA_OUTBOUND_SHIPMENT_STATUS
Envio multicanalFULFILLMENT_ORDER_STATUS
Envio pelo vendedorORDER_CHANGE
Gestão de marcaBRANDED_ITEM_CONTENT_CHANGE
ITEM_PRODUCT_TYPE_CHANGE
Gerenciamento de contas de parceiros de vendasACCOUNT_STATUS_CHANGED
Processamento de relatóriosREPORT_PROCESSING_FINISHED
Envio de feedsFEED_PROCESSING_FINISHED

O SP-API oferece dois fluxos de trabalho para receber notificações. Um fluxo de trabalho usa Amazon Simple Queue Service (Amazon SQS) e os outros usos Amazon EventBridge como roteadores para eventos. Dependendo do tipo de notificação que você deseja assinar, você precisará implementar um desses fluxos de trabalho.

Amazon SQS

Amazon SQS é um serviço de enfileiramento de mensagens totalmente gerenciado que permite o recebimento de mensagens de diferentes fontes e seu processamento correspondente. O uso do Amazon SQS fornece uma solução escalável, altamente disponível e segura para receber e processar eventos relevantes para os negócios do cliente. O Amazon SQS oferece várias alternativas para o processamento de mensagens recebidas para oferecer flexibilidade às necessidades do seu aplicativo. Isso inclui integração com AWS Lambda funções e usando o API Amazon SQS.

Uma arquitetura típica do fluxo de trabalho de notificações da API do Amazon SQS SP-API consiste em uma fila de mensagens e um consumidor para esses eventos. A fila de mensagens é hospedada em uma conta da Amazon Web Services (AWS) e recebe notificações de eventos nos quais o parceiro de vendas está inscrito. O processamento de mensagens ocorre de forma assíncrona e se baseia nos casos de uso comercial suportados pelo aplicativo.

The Amazon SQS workflow reference architecture.

As etapas para configurar esse fluxo de trabalho, conforme explicado no Tutorial: Configurar notificações (fluxo de trabalho do Amazon Simple Queue Service), consistem em:

  1. Crie uma fila do Amazon SQS em sua conta da AWS.
  2. Conceder permissões de SP-API para gravar na fila.
  3. Crie um destino do Amazon SQS no SP-API.
  4. Inscrever um parceiro de vendas em um tipo de notificação.

Para simplificar a criação desse fluxo de trabalho, a Amazon fornece um Quick Start que cria uma arquitetura funcional em sua conta da AWS com apenas alguns cliques e se concentra no caso de uso do processamento de relatórios. Para criar a infraestrutura necessária, expor os endpoints da API para gerenciamento de notificações e estendê-la a qualquer outro caso de uso compatível com a API Notifications, siga as etapas em Relatórios de parceiros de vendas Relatórios de API Notificações na Guia de implantação do AWS Quick Start.

Amazon EventBridge

Amazon EventBridge é um barramento de eventos sem servidor que permite a recepção de eventos de uma variedade de serviços da AWS e aplicativos de clientes, bem como sua distribuição correspondente para diferentes destinos de processamento. O EventBridge é um serviço gerenciado e tolerante a falhas que se expande com base no tráfego de entrada. Você pode usar o EventBridge para definir regras personalizadas para filtrar e transformar eventos antes de enviá-los para destinos selecionados, o que simplifica a integração entre os componentes do software. O EventBridge oferece suporte a mais de 40 fontes de eventos de software como serviço para ingestão de dados e vários destinos, incluindo AWS Lambda, API Gateway e endpoints HTTP personalizados.

Uma arquitetura típica do fluxo de trabalho de notificações do SP-API EventBridge consiste em um barramento de eventos hospedado na conta da AWS que recebe:

  • Notificações de eventos nos quais o parceiro de vendas está inscrito
  • Uma ou mais regras personalizadas e seus alvos correspondentes

O processamento de mensagens ocorre de forma assíncrona e se baseia nos casos de uso comercial que o aplicativo suporta.

The EventBridge workflow reference architecture.

As etapas para configurar esse fluxo de trabalho, conforme explicado no Tutorial: Configurar notificações (fluxo de trabalho do Amazon EventBridge), consistem em:

  1. Crie um destino do EventBridge no SP-API.
  2. Associar a origem do evento a um barramento de eventos.
  3. Crie uma regra e associe-a ao barramento de eventos.
  4. Inscrever um parceiro de vendas em um tipo de notificação.

Esta página ajudou você?