Redis Streams com Golang
Messaging on Golang with Redis Streams
O que é Redis?
Redis e um Banco de dados não relacional OpenSource, que tem dentro de sua estrutura o armazenamento chave-valor. O Redis tem estratégias para guardar os dados em memória e em disco, garantindo resposta rápida e persistência de dados. Os principais casos de uso do Redis incluem cache, gerenciamento de sessões, PUB/SUB.
O que é Golang (Go) ?
Go é uma linguagem de programação criada pela Google e lançada em código livre em novembro de 2009. É uma linguagem de alto nível, amplamente utilizada, compilada, focada em produtividade e programação concorrente.
E mensageria (ou messaging)?
Em poucas palavras, a Mensageria consiste na utilização de mensagens para estabelecer a comunicação síncrona ou assíncrona entre aplicações. Geralmente mensageria é uma maneira de resolver problemas complexos de integração entre serviços, através da comunicação indireta/assíncrona entre as partes.
Redis Streams
O Redis Streams é um tipo de dados que foi introduzido na versão 5.0 do Redis, em outras palavras, é uma feature que nos permite trabalhar com um conceito semelhante de tópicos, nos permitindo criar aplicações distribuídas, no estilo produtor(es) e consumidor(es), facilitando o dimensionamento e a criação de sistemas altamente disponíveis.
Quer entender na pratica como isso funciona?
Fiz um vídeo mostrando detalhes de como utilizar o Redis Streams e comparando-o com seus concorrentes (Apache Kafka, RabbitMQ).
Segue o link do repositório no GitHub:
Vou ficando por aqui, ate a próxima galera!
Fontes: