Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Armazenando Acessos de maneira rápida

Num dos exemplos, nós incrementamos a quantidade de vezes os usuários acessam cada página. Interessante pois geraria estatísticas muito boas, ainda mais pelo Redis ser muito rápido. Porém o Redis é volátil, num cenário do mundo real, como seria uma abordagem real interessante? -a cada N minutos persistir esses dados que foram originalmente armazenados no redis em um outro banco persistente? -armazenar em dois bancos: no redis e em paralelo colocar em uma fila num banco persistente?

Quais outras abordagens poderiamos ter?

2 respostas
solução!

Olá Rafael, tudo bem?

As duas abordagens que você citou são bem interessantes, mas para escolher qual delas usar para o armazenamento destes dados em outro banco de forma persistente, depende muito do seu cenário.

A primeira abordagem é bem ideal, definir um período para que essas informações sejam persistidas em outro banco de dados, assim mesmo que seu site tenha uma grande quantidade de acessos, o seu banco onde as informações serão armazenadas não ficará sobrecarregado.

Já a segunda abordagem, também seria ideal, mas você precisaria levar em consideração alguns pontos, o Redis seria mais rápido que o outro banco de dados, então se fosse usado em paralelo (usando ambos), realmente seria gerado uma fila, com isso o seu banco de dados poderia ficar sobrecarregado, devido ao fato de ficar persistindo informações a todo momento.

No meu ponto de vista, essas são as melhores abordagens utilizando o Redis.

Espero ter ajudado!

Entendi, percebo que sempre tem a ver com o cenário. Eu gosto mais da minha segunda abordagem, pois não há chance de perder dados. Mas devo modelar de uma maneira que a persistência não se torne um gargalo, como você falou (e aí talvez entraria o próprio redis como uma fila de armazenamento).