云计算与大数据技术 课件8.5消息队列_第1页
云计算与大数据技术 课件8.5消息队列_第2页
云计算与大数据技术 课件8.5消息队列_第3页
云计算与大数据技术 课件8.5消息队列_第4页
云计算与大数据技术 课件8.5消息队列_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

消息队列消息队列简介消息队列(MessageQueue,MQ)从广义上来说是一种消息队列服务中间件,提供一套完整的信息生产、传递和消费的软件系统。常见的MQ中间件有:RabbitMQ、RocketMQ、Kafka、ActiveMQ等。消息队列简介MQ是一种应用程序间的通信机制,与传统的远程调用(RPC)不同,它采用异步通信模式。MQ中间件是一个独立的应用程序,专门用于接收、存储、分发消息。消息队列简介两种主要的消息传递模式为点对点传递模式、发布-订阅传递模式。消息队列简介1.点对点传递模式点对点传递模式将消息持久化到一个队列中,此时将有一个或多个消费者消费队列中的数据,但是一条消息只能被消费一次。消息队列简介2.发布-订阅传递模式发布-订阅传递模式将消息持久化到一个Topic中。消费者可以订阅一个或多个Topic,并消费该Topic中所有的数据。同一条数据可以被多个消费者消费。消息队列作用1.程序间解耦在应用之间引入MQ,可以使应用之间的交互更改为通过MQ消息来触发,降低了应用之间的耦合度。只需上游系统发布消息和下游系统订阅消息即可。消息队列作用2.异步处理异步应用场景,如用户在Web应用或App上注册成功后,服务端需要给用户发送注册邮件和注册短信电商平台上完成订单支付后,后台服务需要扣减库存量、赠送优惠券、增加用户积分、修改订单状态、物流系统等。消息队列作用消息队列提供了一个异步通信机制,消息的发送者不必一直等到消息被成功处理后才返回,而是可以立即返回。消息队列作用3.削峰填谷在互联网电商的秒杀活动、团购抢单、店庆等超高并发场景中,后端服务可能来不及同步处理过多、过快的请求,就会导致请求堵塞,严重时可能因为高负荷运转而拖垮Web服务器。这样的突发流量并不常见,若为了处理这类峰值访问而投入资源来随时待命,则会造成巨大的浪费。此时,可以先将用户的秒杀请求作为消息存入消息队列中间件,然后由后端服务根据自身能力慢慢处理消息队列中的请求信息。消息队列作用消息队列作用4.消息通信消息队列系统通常内置了高效、可靠的通信机制,因此,除了主要的数据传输和任务处理功能,也可以用于实现纯消息通信。这种通信方式可以用于多种场景,如点对点通信或聊天室通信等。常见的消息队列1.RabbitMQRabbitMQ是一个由Erlang语言开发的AMQP(AdvancedMessageQueuingProtocol,高级消息队列协议)的开源实现,其本质是一套消息队列服务软件,本身支持很多协议,属于重量级消息队列,更适合企业级的开发。常见的消息队列RabbitMQ架构常见的消息队列2.RocketMQRocketMQ是阿里中间件团队开源的一款消息队列,它采用纯Java开发,具有高吞吐量、高可用性等特点,适用于大规模分布式系统,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。目前在阿里巴巴被广泛应用于交易、充值、流

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论