在评估Redis和RabbitMQ之后,出于以下原因,我选择RabbitMQ作为我们的经纪人:
- RabbitMQ允许您使用SSL证书来加密发送给代理的数据,从而使用内置的安全层,这意味着没有人会嗅探您的数据并有权访问您的重要组织数据。
- RabbitMQ是一款非常稳定的产品,可以每秒处理大量事件和许多连接,而不会成为瓶颈。
- 在我们的组织中,我们已经使用过RabbitMQ,并且对使用它有很好的内部了解,并且已经准备好与Chef集成。
关于扩展,RabbitMQ具有内置的群集实现,除负载均衡器外,您还可以使用它来实现冗余代理环境。
现在到使用RabbitMQ的弱点:
- 大多数Logstash托运人不支持RabbitMQ,但另一方面,最好的一个名为Beaver的实现可以将数据毫无问题地发送到RabbitMQ。
- Beaver当前版本使用RabbitMQ的实现在性能上(出于我的目的)有点慢,并且无法处理来自一台服务器的3000个事件/秒的速率,并且服务有时会崩溃。
- 现在,我正在研究一种解决方案,该解决方案将解决RabbitMQ的性能问题并使Beaver托运人更加稳定。第一个解决方案是添加更多可同时运行的流程,这将赋予托运人更多的权力。第二种解决方案是更改Beaver以异步地将数据发送到RabbitMQ,这在理论上应该更快。我希望我能在本周末之前完成两种解决方案的实施。
- 您可以在此处关注该问题:https
- //github.com/josegonzalez/python-
beaver/issues/323
并在此处检查请求请求:https :
//github.com/josegonzalez/python-
beaver/pull/324
如果您还有其他问题,请随时发表评论。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)