码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 微服务框架 SpringCloud微服务架构 16 SpringAMQP 16.2 入门案例的消息发送


    微服务框架

    【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】

    SpringCloud微服务架构

    文章目录

        • 微服务框架
        • SpringCloud微服务架构
        • 16 SpringAMQP
          • 16.2 入门案例的消息发送
            • 16.2.1 直接开干
            • 16.2.2 总结

    16 SpringAMQP

    16.2 入门案例的消息发送
    16.2.1 直接开干

    案例:利用SpringAMQP实现HelloWorld中的基础消息队列功能

    流程如下:

    1. 在父工程中引入spring-amqp的依赖

    2. 在publisher服务中利用RabbitTemplate发送消息到simple.queue这个队列

    3. 在consumer服务中编写消费逻辑,绑定simple.queue这个队列

    【1】引入AMQP 的依赖

    因为publisher和consumer服务都需要amqp依赖,因此这里把依赖直接放到父工程mq-demo中:

    
    <dependency>
        <groupId>org.springframework.bootgroupId>
        <artifactId>spring-boot-starter-amqpartifactId>
    dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    【2】步骤2:在publisher中编写测试方法,向simple.queue发送消息

    1. 在publisher服务中编写application.yml,添加mq连接信息:
    logging:
      pattern:
        dateformat: MM-dd HH:mm:ss:SSS
    
    spring:
      rabbitmq:
        host: 1.13.13.44 # rabbitMQ 的服务IP地址
        port: 5672 # 端口
        username: itcast
        password: 123321
        virtual-host: /
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述

    1. 在publisher服务中新建一个测试类,编写测试方法:
    package cn.itcast.mq.spring;
    
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.amqp.rabbit.core.RabbitTemplate;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.test.context.junit4.SpringRunner;
    
    import java.nio.channels.Pipe;
    
    /**
     * ClassName: SpringAmqpTest
     * date: 2022/10/31 10:05
     *
     * @author DingJiaxiong
     */
    
    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class SpringAmqpTest {
    
        @Autowired
        private RabbitTemplate rabbitTemplate;
    
        @Test
        public void testSendMessage2SimpleQueue(){
            String queueName = "simple.queue";
            String message = "hello,Spring AMQP";
            
            rabbitTemplate.convertAndSend(queueName,message);
        }
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    OK, 直接运行测试

    在这里插入图片描述

    绿了!消息发送完成了,看看控制台

    在这里插入图片描述

    妙啊

    直接在控制台看看是啥

    在这里插入图片描述

    OK,没问题,就是我们发送的消息

    回顾一下

    在这里插入图片描述

    16.2.2 总结

    什么是AMQP?

    • 应用间消息通信的一种协议,与语言和平台无关。

    SpringAMQP如何发送消息?

    • 引入amqp的starter依赖
    • 配置RabbitMQ地址
    • 利用RabbitTemplate的convertAndSend方法
  • 相关阅读:
    十分钟轻松入门 nw.js 实现桌面应用程序
    浏览器提示“此网站的安全证书有问题“,你还敢继续访问吗?
    DC-9靶场下载及渗透实战详细过程(DC靶场系列)
    65. 使用事物码 SAT 查找某个 SAPGUI 事物码操作调用的 Function Module 列表
    借助ChatGPT提高编程效率指南
    【C++模拟实现】哈希与unorder_set和unorder_map关联式容器的模拟实现
    python第二章
    ECharts实现数据可视化入门教程(超详细)
    win11 home版安装vmware win10 64位系统,出现此主机不支持64位客户机操作系统问题解决
    【matlab图像处理】直方图均衡化操作
  • 原文地址:https://blog.csdn.net/weixin_44226181/article/details/128180482
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号