没有合适的资源?快使用搜索试试~ 我知道了~
首页RabbitMQ技术详解
RabbitMQ技术详解
283 浏览量
更新于2023-05-25
评论
收藏 437KB PDF 举报
本文来自于网络,本文主要介绍了RabbitMQ是什么,RabbitMQ为何会出现,RabbitMQ基础概念,RabbitMQ集群等。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。AMQP,即AdvancedMessageQueuingProtocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于
资源详情
资源评论
资源推荐

RabbitMQ技术详解技术详解
RabbitMQ是什么
定义
RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、
JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高
可用性等方面表现不俗。
AMPQ
AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件
设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。
它可以使对应的客户端(client)与对应的消息中间件(broker)进行交互。消息中间件从发布者(publisher)那里收到消息
(发布消息的应用,也称为producer),然后将他们转发给消费者(consumers,处理消息的应用)。由于AMQP是一个网络
协议,所以发布者、消费者以及消息中间件可以部署到不同的物理机器上面。
虽然在同步消息通讯的世界里有很多公开标准(如 COBAR的 IIOP ,或者是 SOAP 等),但是在异步消息处理中却不是这
样,只有大企业有一些商业实现(如微软的 MSMQ ,IBM 的 Websphere MQ 等),因此,在 2006 年的 6 月,Cisco 、
Redhat、iMatix 等联合制定了 AMQP 的公开标准。
RabbitMQ是由RabbitMQ Technologies Ltd开发并且提供商业支持的。该公司在2010年4月被SpringSource(VMWare的一个
部门)收购。在2013年5月被并入Pivotal。其实VMWare,Pivotal和EMC本质上是一家的。不同的是VMWare是独立上市子公
司,而Pivotal是整合了EMC的某些资源,现在并没有上市。
同类产品
消息中间件是一种由消息传送机制或消息队列模式组成的中间件技术,利用高效可靠的消息传递机制进行平台无关的数据交
流,并基于数据通信来进行分布式系统的集成。
Redis
是一个Key-Value的NoSQL数据库,开发维护很活跃,虽然它是一个Key-Value数据库存储系统,但它本身支持MQ功能,所
以完成可以当做一个轻量级的队列服务来使用。对于RabbitMQ和Redis的入队和出队操作,各执行100万次,每10万次记录一
次执行时间。测试数据分为128Bytes、512Bytes、1K和10K四个不同大小的数据。实验表明:入队时,当数据比较小
时,Redis的性能要高于RabbitMQ,而如否数据大小超过了10K,Redis则慢的无法忍受;出队时,无论数据大小,Redis都表
现出非常好的性能,而RabbitMQ的出队性能则远低于Redis。
MemcacheQ
持久化消息队列(简称mcq)是一个轻量级的消息队列,特性如下:
简单易用
处理速度快
多条队列
并发性能好
与memcache的协议兼容。意味着只要装了前者的extension即可,不需要额外的插件
在zend framework中使用很方便
MSMQ
这是微软的产品力唯一被认为有价值的东西。如果MSMQ能证明可以应对这种任务,他们将选择使用它。
关键是它并不复杂,除了接收和发送,没有别的;它有一些硬性限制,比如最大消息体积是4MB。
然而,通过和一些想MassTransit或NServiceBus这样的软件的连接,它完全可以解决这些问题。
ZeroMQ


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0