Arquitetura e Funcionamento de um Broker de Mensagens com AMQP
Arquitetura Lógica do AMQP
O modelo do protocolo AMQP (Advanced Message Queuing Protocol) é organizado em camadas hierárquicas: Broker → Virtual Host → Exchange → Queue. Essa estrutura assemelha-se a uma divisão geográfica como país, estado e cidade, permitindo isolar ambientes, separar aplicações e gerenciar fluxos de mensagens complexos com a ...
Publicado em 10-12 22:57
Implementação de Mensageria com RabbitMQ no Spring Boot
Visão Geral do RabbitMQ
O RabbitMQ é um sistema de filas de mensagens open source desenvolvido em Erlang, que implementa o protocolo AMQP (Advanced Message Queuing Protocol). Ele atua como um intermediário (broker) que permite a comunicação assíncrona entre aplicações, eliminando a necessidade de conexões diretas e constantes entre os serviços. ...
Publicado em 9-17 08:01
Resolvendo Problemas de Consumo Duplicado de Mensagens em Sistemas Assíncronos
Um cenário recorrente em sistemas distribuídos que utilizam mensageria assíncrona é o consumo duplicado de mensagens. Isso pode levar a inconsistências de dados e comportamentos inesperados no sistema. Este artigo explora as causas desse problema, comumente associado à garantia de entrega "pelo menos uma vez" (atleast once), e propõe ...
Publicado em 9-16 11:06
Práticas Recomendadas para Biblioteca Cliente NATS (Nack)
Práticas Recomendadas para Biblioteca Cliente NATS (Nack)
1. Introdução ao Projeto
O NATS é um sistema de mensagens de alta performance e baixo overhead, amplamente utilizado para comunicação em tempo real em arquiteturas de microserviços. A biblioteca cliente NATS (Nack) é uma implementação em Go que oferece acesso e operações ao serviço NATS, ...
Publicado em 7-26 23:52
Utilizando RabbitMQ para Gerenciar Transações Distribuídas
Estratégias Comuns para Transações Distribuídas
Existem diversas abordagens para lidar com transações distribuídas:
Protocolos XA/JTA: Baseada em bancos de dados, requer suporte do fornecedor do banco de dados e pode ser implementada com componentes Java como o Atomikos.
Verificação Assíncrona de Dados: Semelhante ao mecanismo de pagamento de ...
Publicado em 7-22 07:35
Integração do Spring Boot 2.X com RabbitMQ: Modo Topic
O modo topic do RabbitMQ é um padrão de roteamento flexível que permite associar chaves de roteamento (routing keys) com padrões wildcard. A chave para entender este modo está na relação entre três elementos: exchange (troca), routing key (chave de roteamento) e queue name (nome da fila).
Produtor (sender): envia mensagens especificando excha ...
Publicado em 6-17 03:32
RabbitMQ com C#: Implementando Padrões de Mensageria (Fila Simples, Work, Fanout e Direct)
O RabbitMQ é um broker de mensagens robusto e de código aberto, amplamente utilizado em arquiteturas distribuídas para desacoplar componentes e gerenciar a comunicação assíncrona. Ele implementa o Advanced Message Queuing Protocol (AMQP), oferecendo recursos poderosos para roteamento e persistência de mensagens.
O que é o RabbitMQ e Por Que Usá ...
Publicado em 5-30 07:33