Visão Geral
Gateway de API construído com NestJS que atua como ponto único de entrada para microsserviços. Utiliza RabbitMQ para processamento assíncrono de mensagens com retry policy e dead-letter queues. O Redis é usado para cache de respostas e gerenciamento de sessões.
Problema Resolvido
Microsserviços precisam de um ponto de entrada unificado que gerencie autenticação, rate limiting e roteamento, além de processar operações longas de forma assíncrona sem bloquear o cliente.
Objetivos
Arquitetura
Gateway como camada única de entrada utilizando o padrão API Gateway. As requisições síncronas são roteadas diretamente para os microsserviços correspondentes. Operações assíncronas publicam mensagens no RabbitMQ, que são consumidas pelos workers com retry policy configurada.
Fluxo dos Dados
Cliente envia requisição → Gateway valida autenticação → roteia para o microsserviço ou publica na fila → worker consome a mensagem → em caso de falha, retry com backoff exponencial → após exceder tentativas, mensagem vai para dead-letter queue.
Funcionalidades
Tecnologias
Desafios
Aprendizados
Domínio de padrões de mensageria assíncrona, configuração de RabbitMQ em produção, e estratégias de resiliência para sistemas distribuídos.