fbpx

de A a Z

Em 2013~2014 eu cuidava do BackOffice de uma Startup de música. Uma das demandas internas me fez conduzir um estudo para identificar soluções que lidassem com o controle de processamento assíncrono e contínuo.

Ao final do meu estudo elegi RabbitMQ por descobrir ouro imerso em um projeto que não tinha tanta visibilidade assim.

Desde então RabbitMQ é meu fiel escudeiro na hora de lidar com operações assíncronas resilientes, atendendo todos os tipos de volumes de tráfego, aumentando a resiliência e disponibilidade das minhas aplicações, melhorando a eficiência computacional, aumentando o nível de confiabilidade nos meus projetos, mesmo assumindo como premissa que errarei e existirão bugs.

De quebra ainda consigo lidar com escalabilidade de forma tranquila e serena, atendendo cargas de trabalho centenas de vezes maiores do que se usasse apenas API’s HTTP ou REST. 

Com um pouco de design, consigo reduzir load e consumo de recursos de banco de dados em meus clientes, eliminando ociosidade e grandes e tediosas queries e processamento batch.

Desde 2014 eu venho publicando textos, artigos, fazendo lives sobre RabbitMQ como forma de conscientizar a galera da comunidade .NET sobre o que há de errado com a forma síncrona com que aprendemos a desenvolver. RabbitMQ é um dos temas que ganha protagonismo aqui no gaGO.io.

Vídeos

Ao longo dos últimos anos produzi bastante conteúdo e conteúdo bem denso 

Publicações

Meus posts sobre RabbitMQ e Mensageria

Resiliência: Polly vs RabbitMQ

Resiliência: Polly vs RabbitMQ

Fato que eu adoro essas comparações inusitadas! A intenção desse post é poder trazer de forma consistente uma visão que ajude a trazer clareza, e me permita também referenciar um conteúdo mais estruturado em vez de ter de construir toda uma argumentação em locais que...

ler mais
RabbitMQ Streams com TypeScript e NodeJS

RabbitMQ Streams com TypeScript e NodeJS

Em Julho o RabbitMQ ganhou suporte a Streams. De um lado aproxima o RabbitMQ do Kafka já que possui a mesma estrutura de dados, mas por outra ótica se isola completamente sendo provavelmente o único produto da categoria com suporte a ambos. Mas você sabia que a...

ler mais
RabbitMQ é Resiliente? [video]

RabbitMQ é Resiliente? [video]

Será que o RabbitMQ de fato é seguro? O que acontece quando ele cai? O que acontece se minha aplicação cai? Será que o RabbitMQ persiste os dados no disco? Ou o RabbitMQ trabalha somente com dados em memória? Todas essas perguntas são pertinentes, e vou abordá-las...

ler mais
Streams no RabbitMQ

Streams no RabbitMQ

Uma novidade que vai deixar aqueles que ficavam comparando RabbitMQ e Kafka mais perdidos ainda. No dia 9 de julho saiu um o RabbitMQ 3.9.0 RC que conta com suporte a Streams. A comparação direta era descabida até então: Enquanto o Kafka trabalha com streams o...

ler mais
Kafka vs RabbitMQ

Kafka vs RabbitMQ

Vamos direto ao ponto: São coisas diferentes, se você está comparando ambos ou está querendo decidir entre eles, você não entendeu algum deles ou não entendeu nenhum dos dois. Comparação descabida A origem da comparação RabbitMQ e Kafka se dá da pura e completa...

ler mais
EasyNetQ em perspectiva

EasyNetQ em perspectiva

Abstrações são desenhadas para resolver problemas e abstrair um ou mais aspectos de uma implementação. Uma abstração pode entregar redução de complexidade, maior coesão, configuração facilitada, adaptação e até mesmo suprimir aquilo que não nos é relevante quando um...

ler mais
Como perder mensagens com RabbitMQ

Como perder mensagens com RabbitMQ

É comum falarmos sobre receitas de sucesso e como resolver problemas, mas será que você está fazendo essas coisas, está perdendo mensagens e vai culpar o RabbitMQ por isso? Se liga nessas dicas, pois se você está perdendo mensagens com RabbitMQ, a culpa é totalmente...

ler mais
RabbitMQ & AMQP – #6 – Show me the code

RabbitMQ & AMQP – #6 – Show me the code

No post anterior eu mostrei como as coisas acontecem na interface de gerenciamento do RabbitMQ. Agora é hora de mostrar as principais iterações com o RabbitMQ via código. Naturalmente, privilegiarei C# aqui, mas você pode usar as principais tecnologias para realizar...

ler mais
RabbitMQ & AMQP – #3 – Conceitos

RabbitMQ & AMQP – #3 – Conceitos

Agora é o momento de falarmos brevemente sobre cada elemento do AMQP. Nesse post ainda estamos tratando com superficialidade, mas é importantíssimo passar por aqui para progredirmos nessa jornada. Standard vs Implementação Standard que trata de mensageria. No AMQP não...

ler mais
RabbitMQ & AMQP – #1 – Prefácio

RabbitMQ & AMQP – #1 – Prefácio

Todas as semanas, algumas semanas mais, outras menos, me questionam sobre RabbitMQ. Sua utilidade, se vale a pena ou não aprender ou usar, ou até se não é mais adequado criar uma tabelinha no banco para controlar o que foi processado e o que não foi. Na prática a zona...

ler mais

RabbitMQ para Aplicações .NET

Do Zero ao Expert em RabbitMQ em 21 dias

Do básico de Mensageria ao avançado, passando por Microsserviços, Event Driven Architecture e muito mais.

 

Saiba mais...

RabbitMQ Newsletter

Novidades e ofertas de conteúdo exclusivo e único no Brasil.

 

RabbitMQ é um projeto Open Source incrível.

Ele me ajudou diversas vezes a lidar com os cenários dos mais diversos em projetos. Desde projetos pequenos, a grandes.

Mas é subestimado dos dois lados:

É mais simples do que os pessimistas pensam e mais complexo do que os otimistas imaginam.

A capacidade de entregar resultado em projetos de todos os tamanhos é sem igual.

A dramática maioria pensa apenas em escalabilidade, um poder incrível para projetos grandes, mas mensageria com RabbitMQ te dá:

  • Resiliência
  • Disponibilidade
  • Eficiência
  • Confiabilidade
  • Escalabilidade

Quando me perguntam se vale a pena eu mostro essa lista e pergunto: Você precisa de algum desses benefícios? Se sim, teu projeto é um forte candidato ao uso.

Os demais benefícios vêm de brinde!

RabbitMQ é abordado em profundidade tanto no curso RabbitMQ para aplicações .NET quanto no Docker Definitivo.