当前位置:主页 > 365bet体育赌博 >
 
365bet体育赌博
消息队列:各种MQ摘要的一般描述,例如RabbitMQ,ActiveMQ,Kafka

时间:2019/10/01    点击量:

目前,业界有许多MQ产品。进行以下比较:
兔子MQ
这是一个用Erlang编写的开源消息队列。兼容许多协议,如AMQP,XMPP,SMTP,STOMP等。它使它非常沉重,更适合业务级开发。
同时,实现了代理体系结构。也就是说,消息在发送到客户端时会集中排队。
对路由,负载平衡或数据持久性的出色支持。
女士们
这是一个Key-Value NoSQL数据库。它在开发和维护方面非常活跃。虽然它是一个键值数据库存储系统,但它支持MQ功能,可以用作轻量级队列服务。
对于RabbitMQ和Redis I / O操作,每次运行执行一百万次,运行时间每100,000次记录一次。
测试数据分为四种不同的数据大小:128字节,512字节,1K和10K。
实验表明,当进入团队时,当数据相对较小时,Redis的性能超过RabbitMQ的性能,当数据大小超过10 K时,Redis变得缓慢且无法忍受。RabbitMQ的输出远小于Redis的输出。
ZeroMQ
它被称为最快的消息队列系统,尤其是在高性能需求场景中。
ZMQ可以实现RabbitMQ不喜欢的高级/复杂队列,但开发人员需要结合多个技术框架。技术复杂性是该MQ应用程序成功的挑战。
ZeroMQ拥有自己的非中间件模型,不需要安装和运行消息传递或中间件服务器,因为应用程序扮演着这项服务的角色。
您需要做的就是浏览ZeroMQ库并使用NuGet进行安装以在应用程序之间发送消息。
但是,ZeroMQ仅提供非持久性队列。也就是说,如果机器处于非活动状态,数据将会丢失。
其中,ZeroMQ在Twitter风暴中用作流数据流。
ActiveMQ的
这是Apache的一个子项目。
与ZeroMQ一样,允许使用代理和对等技术的队列。
同时,与RabbitMQ一样,您可以使用少量代码高效部署高级应用程序方案。
RabbitMQ,ZeroMQ和ActiveMQ与C ++,Java和多语言客户端兼容。
网络,Python,PHP,Ruby等
Jafka / Kafka
Kafka是Apache的子项目,是一种以多种语言分发的高性能发布/订阅消息队列系统。Jafka由Kafka(Kafka的改进版本)开发。
它具有以下特性:快速持久性,O(1)系统过载下的消息持久性。高性能,常规服务器上的性能速度高达10 W / s。完全分布式系统,Broker生产者,消费者本身与分发兼容,自动实现复杂的均衡,并支持并行加载Hadoop数据,用于离线分析系统,如日志数据和Hadoop我会的需要实时处理限制。
Kafka通过Hadoop的并行加载机制统一在线和离线消息处理。研究系统也就此主题对此进行了评估。
与ActiveMQ相比,ApacheKafka是一个非常轻便的消息传递系统。除了出色的性能外,它还是一个性能良好的分布式系统。
RocketMQ
Ali的开源新闻中间件捐赠了由Java语言开发的Apache Foundation,适用于高性能,高可用性,大规模分布式系统应用程序等。不要低估它。
ZeroMQ
被称为历史上最快的消息队列,基于C语言开发。
ZeroMQ是一个消息处理队列库,可以在多线程,多核和主机之间灵活扩展。在大多数情况下,您习惯于分类为一系列消息队列,但这与前一个消息队列本质上不同,ZeroMQ本身不是消息队列服务器。将封装层添加到原始Socket API。
不再分析其他场列表,HornetQ,ApacheQpid,Sparrow,Starling,Kestrel,Beanstalkd和Amazon SQS。
如果您有兴趣,可以找到自己。
^ _ ^