RabbitMQ,什么是rabbitMQ,优点,干什么用的,为什么选择RabbitMQ,使用场景

RabbitMQ

什么是rabbitMQ

    RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue 高级消息队列协议 )的开源实现,
    能够实现异步消息处理
    
    RabbitMQ是一个消息代理:它接受和转发消息。

优点:异步消息处理
业务解耦(下订单操作:扣减库存、生成订单、发红包、发短信),
将下单操作主流程:扣减库存、生成订单
然后通过MQ消息队列完成通知,发红包、发短信
错峰流控 (通知量 消息量 订单量大的情况实现MQ消息队列机制,淡季情况下访问量会少)

          灵活的路由(Flexible Routing) 
            在消息进入队列之前,通过 Exchange 来路由消息的。对于典型的路由功能,RabbitMQ 已经提供了一些内置的 Exchange 来实现。针对更复杂的路由功能,可以将多个 Exchange 绑定在一起,也通过插件机制实现自己的 Exchange 。
    
    RabbitMQ网站端口号:15672
    程序里面实现的端口为:5672

queue队列
Queue(队列)RabbitMQ的作用是存储消息,队列的特性是先进先出。
生产者生产消息最终被送到RabbitMQ的内部对象Queue中去,
而消费者则是从Queue队列中取出数据。

**消息队列**
    消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。 
    消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,
    由消息系统来确保消息的可靠传递。消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管从 MQ 中取消息而不管是谁发布的。
    这样发布者和使用者都不用知道对方的存在。

:消息队列中间件
kafka rabbitMQ activeMQ rocketMQ(可以处理分布式事务)

干什么用的:
使用rabbitmq 中间件,将一些无需即时返回且耗时的操作提取出来,进行了异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量。

使用场景

在我们秒杀抢购商品的时候,系统会提醒我们稍等排队中,而不是像几年前一样页面卡死或报错给用户。

为什么选择RabbitMQ

1、除了Qpid,RabbitMQ是唯一一个实现了AMQP标准的消息服务器;

2、可靠性,RabbitMQ的持久化支持,保证了消息的稳定性;

3、高并发,RabbitMQ使用了Erlang开发语言,Erlang是为电话交换机开发的语言,天生自带高并发光环,和高可用特性;

4、集群部署简单,正是应为Erlang使得RabbitMQ集群部署变的超级简单;

5、社区活跃度高,根据网上资料来看,RabbitMQ也是首选;

工作机制

生产者、消费者和代理

在了解消息通讯之前首先要了解3个概念:生产者、消费者和代理。

生产者:消息的创建者,负责创建和推送数据到消息服务器;

消费者:消息的接收方,用于处理数据和确认消息;

代理:就是RabbitMQ本身,用于扮演“快递”的角色,本身不生产消息,只是扮演“快递”的角色。

转载:https://blog.csdn.net/SpringCYB/article/details/89454336ops_request_misc=%257B%2522request%255Fid%2522%253A%2522160082690719724839205203%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=160082690719724839205203&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v25-4-89454336.first_rank_v2_rank_v25&utm_term=rabbitmq%E5%B9%B2%E4%BB%80%E4%B9%88%E7%9A%84&spm=1018.2118.3001.4187
文章转自:https://www.roncoo.com/article/detail/133399

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值