RabbitMq系列教程(一)

           RabbitMq做为一个成熟的消息队列商业产品,最早是为了给金融系统提供一种消息总线的功能,后来被广泛应用于各种中小型的网站中,RabbitMq的设计初衷就是为了让消费者和生产者解耦,可以插拔式的添加或减少任何一个生产者或消费者,并且生产者和消费者角色可以互换,一个rabbitMq的客户端可以既是生产者也是消费者。

           消息队列的作用:

           1.异步处理

           2.应用解耦

           3.流量削峰

           4.日志采集

           5.延时任务

          正是消息队列的诸多好处,所以在分布式的大环境下,变的越来越重要。

          先说一下为什么需要一个成熟的消息队列产品,在各种语言中,都可能原生的就有阻塞队列,很容易就可以实现一个生产者消费者模型,一般我们在学多线程时都会学习生产者消费者模型。但是我们自己实现的消费者生产者有哪些问题呢?

          1.如果支持暂存消息,存在内存是否会占用我们服务器的内存,存在磁盘是否会影响速率。

          2.分布式环境下,是否每一个服务里面都需要一个生产者消费者模型。

          3.对于消息发送失败,消息应答是否有处理

          4.各种类型的消息,是否支持发布/订阅,广播等模式,以满足业务的多样性

          5.是否支持消息的持久化

          6.往往在对性能要求很高的场合,生产者生产完消息后,消费者需要第一时间的接收到消息并处理消息,商业的消息队列                  产品往往对性能进行了很大的优化,例如rabbitmq在tcp的基础上建立了channel,多路复用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值