SpringCloud微服务技术栈(黑马)学习笔记DAY4

初识MQ

        MQ消息队列,是事件驱动架构中的Broker。

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第1张图片

RabbitMQ快速入门  

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第2张图片

常见消息模型 

        基本消息队列

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第3张图片

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第4张图片

        工作消息队列

        发布订阅

SpringAMQP

        发送消息

        导入AMQP依赖

        配置rabbitmq相关信息

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第5张图片

        使用springamqp

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第6张图片

        接收消息 

        引入依赖,填写配置(略)

        编写消费类

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第7张图片

        Work Queue工作队列

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第8张图片

        假设一秒钟消息的发送者会发送五十条消息,而两个接收者的效率不同。消费者1的取的能力大于消费者2取的能力,但是由于消息预取机制,两个消费者都拿到相同的消息导致消费的时间超过界限。可以通过修改配置文件设置消费预取限制。

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第9张图片         发布与订阅

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第10张图片

                Fanout Exchange

                该模式下会将接收到的消息路由到每一个跟其绑定的queue。

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第11张图片

                 步骤:1)消费端编写配置类添加交换机和队列然后绑定队列和交换机

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第12张图片

                        2)消费者接收消息

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第13张图片

                        3)发送端编写发送的代码

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第14张图片

        DirectExchange 

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第15张图片

                步骤:1)这次创建交换器和队列以及两者的绑定关系不额外写个配置类使用@Bean的方式创建,而是直接在消费端中使用@RabbitListener中创建

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第16张图片                         2)发送端编写发送的代码

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第17张图片

                TopicExchange 

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第18张图片

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第19张图片                         步骤:1)SpringCloud微服务技术栈(黑马)学习笔记DAY4_第20张图片

                                    2)

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第21张图片

                消息转换器 

                在SpringAMQP的发送方法中,接收消息的类型是Object,SpringAMQP可以帮我们序列化为字节后发送。

SpringCloud微服务技术栈(黑马)学习笔记DAY4_第22张图片

                我们可以通过以下步骤修改序列化方式(使用json的序列化)

                引入依赖

                申明MessageConverter

             接收消息的时候,发送方是什么格式的,接收就定义什么格式的接收就好

你可能感兴趣的:(微服务学习笔记,spring,cloud,微服务,学习)