Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

Redis Vs RabbitMQ como um corretor de dados/sistema de mensagens entre o Logstash e o elasticsearch


Depois de avaliar o Redis e o RabbitMQ, escolhi o RabbitMQ como nosso corretor pelos seguintes motivos:
  1. O RabbitMQ permite que você use uma camada de segurança integrada usando certificados SSL para criptografar os dados que você está enviando ao corretor e isso significa que ninguém vai farejar seus dados e ter acesso aos seus dados organizacionais vitais.
  2. l>
  3. RabbitMQ é um produto muito estável que pode lidar com grandes quantidades de eventos por segundo e muitas conexões sem ser o gargalo.
  4. Em nossa organização já usávamos o RabbitMQ e tínhamos um bom conhecimento interno sobre o uso e uma integração já preparada com o chef.

Em relação ao dimensionamento, o RabbitMQ possui uma implementação de cluster integrada que você pode usar além de um balanceador de carga para implementar um ambiente de broker redundante.

O meu cluster RabbitMQ é Ativo Ativo ou Ativo Passivo?

Agora, para o ponto mais fraco de usar o RabbitMQ:
  1. a maioria dos remetentes do Logstash não suporta RabbitMQ, mas, por outro lado, o melhor, chamado Beaver, tem uma implementação que enviará dados para o RabbitMQ sem problemas.
  2. A implementação que o Beaver tem com o RabbitMQ em sua versão atual é um pouco lenta no desempenho (para meus propósitos) e não foi capaz de lidar com a taxa de 3000 eventos/s de um servidor e de vez em quando o serviço travava.
  3. No momento, estou trabalhando em uma correção que resolverá o problema de desempenho do RabbitMQ e tornará o remetente do Beaver mais estável. A primeira solução é adicionar mais processos que podem ser executados simultaneamente e dar mais poder ao remetente. A segunda solução é alterar o Beaver para enviar dados para o RabbitMQ de forma assíncrona, o que teoricamente deve ser muito mais rápido. Espero terminar de implementar as duas soluções até o final desta semana.

Você pode acompanhar a questão aqui:https://github.com/josegonzalez/python-beaver/issues/323

E verifique a solicitação de pull aqui:https://github.com/josegonzalez/python-beaver/pull/324

Se você tiver mais perguntas, sinta-se à vontade para deixar um comentário.