Redis Streams com Golang

Filipe Alves
Linux & World Open-Source
2 min readJul 26, 2020

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

Messaging Flow

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:

--

--