什么是rabbitMQ

什么是rabbitMQ

下载地址:

https://www.rabbitmq.com/

MQ: 消息队列,通过典型地生成者和消费者模型,生产者不断地向消息队列中生产消息,消费者不断地从队列中获取消息。而且只关心消息地发送和接收,没有业务逻辑地侵入,轻松地实现系统之间的解耦。别名为:中间件

消息中间件优点:

  • 解藕:通过中间件来减少其他服务的对另一个服务(例如对发消息的服务)的依赖

  • 异步通信
    在这里插入图片描述

  • 削峰
    在这里插入图片描述
    缺点:

  • 系统可用性降低:
    系统引入的外部依赖越多,后期维护的成本加大,虽然系统与系统之间进行了解藕,但是别忘了所有系统都与MQ 建立了连接,一旦MQ 部署的服务器宏机,导致所有的系统无法正常的通信。

  • 系统复杂度提高
    加入MQ后,还考虑消息丢失,消息顺序,消息重复消费等问题

  • 数据一致性

  • 由于使用了异步相应,例如上图2 在,如果一个操作失败后,会导致数据错误。

类型: ActiveMQ 、 rabbitMQ、 kafka、 阿里自己研发的rocketMQ

rabbitMQ:基于AMQP协议,erlang语言开发,是部署最广泛的开源消息中间件,是最受欢迎的开源消息中间件之一
  • AMQP协议:

  • advanced message queuing protocol: 在2003年提出,最早应用与解决金融不同平台之间信息传递交互问题,顾名思义,AMQP是一种协议,跟准确的说是一种binary wire-lenvel protcol(连接协议),这是其JMS本质的差别,AMQP的provide天然性就是跨平台的.
    

    在这里插入图片描述

rabbitMQ: 使用Erlang语言开发的开源消息队列系统,基于AMQP协议来实现。AMQP的主要特征:

  • 1.面向消息、队列、路由(包括点对点和发布/订阅)
  • 2.可靠性、安全

更多使用在企业级系统内对数据一致性、稳定性、和可靠性要求很高的场景,对性能和吞吐量有一定的要求。

rabbitmq 比 kafaka 可靠,卡法卡更合适IO高吞吐的处理了,一般应用在大数据日志处理或者对实时性(少量延迟),可靠性(少量丢数据)要求稍低的场景使用,比如ELK日志收集
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值