求关注

快速入门生产者与消费者,SpringBoot整合RabbitMQ!

前言

本章我们来一次快速入门RabbitMQ——生产者与消费者。需要构建一个生产端与消费端的模型。什么意思呢?我们的生产者发送一条消息,投递到RabbitMQ集群也就是Broker。

我们的消费端进行监听RabbitMQ,当发现队列中有消息后,就进行消费。

1. 环境准备

本次整合主要采用SpringBoot框架,需要对SpringBoot的使用有一定了解。

2.大概步骤

我们来看下大概步骤:

  • ConnectionFacorty:获取连接工厂
  • Connection:一个连接
  • Channel:数据通信信道,可发送和接收消息
  • Queue:具体的消息存储队列
  • Producer & Consumer 生产者和消费者

这个连接工厂需要配置一些相应的信息,例如: RabbitMQ节点的地址,端口号,VirtualHost等等。

Channel是我们RabbitMQ所有消息进行交互的关键。

3. 项目实战

3.1 连接工厂

/** * * @ClassName: ConnectionUtils * @Description: 连接工具类* @author Coder编程* @date 2019年6月21日 上午22:28:22 * */public class ConnectionUtils { public static Connection getConnection() throws IOException, TimeoutException { //定义连接工厂 ConnectionFactory factory = new ConnectionFactory(); //设置服务地址 factory.setHost("127.0.0.1"); //端口 factory.setPort(5672);//amqp协议 端口 类似与mysql的3306 //设置账号信息,用户名、密码、vhost factory.setVirtualHost("/vhost_cp"); factory.setUsername("user_cp"); factory.setPassword("123456"); // 通过工程获取连接 Connection connection = factory.newConnection(); return connection; }}

3.2 生产端

/** * * @ClassName: Producer * @Description: 生产者* @author Coder编程* @date 2019年7月30日 上午21:04:43 * */public class Producer { public static void main(String[] args) throws Exception { System.out.println("Producer start..."); //1 创建ConnectionFactory Connection connection = ConnectionUtils.getConnection(); //2 通过connection创建一个Channel Channel channel = connection.createChannel(); //3 通过Channel发送数据 for(int i=0; i < 5; i++){ String msg = "Hello RabbitMQ!"; //1 exchange 2 routingKey  channel.basicPublish(

mq多个消费者消费一个消息_消息中间件——RabbitMQ(五)快速入门生产者与消费者...相关推荐

  1. mq多个消费者消费一个消息_一个普通消费者的米家产品使用感受

    受疫情影响,学校开学时间再次延后,这段时间宅在家对所购买的小米生态产品使用频率增加很多,所以就来写写个人使用感受吧,最近这些年差不够购买了40多件小米产品,在此抛开手机不谈,因为已经很久不用小米手机了 ...

  2. mq多个消费者消费一个消息_限塑“动真格”,他们免费给消费者发了5000多个无纺布购物袋...

    半岛记者 肖玲玲 通讯员 姜峰 李文成 8月19日上午,八大峡市场监督管理所辖区内馨大众团岛农贸市场举办限塑宣传活动,工作人员现场给来往消费者免费分发无纺布购物袋. 据市南区市场监管局工作人员介绍,塑 ...

  3. mq多个消费者消费一个消息_ActiveMQ多个消费者消费不均匀问题

    如果客户端处理很慢的话,Broker会在之前发送消息的反馈之前,继续发送新的消息到客户端.如果客户端依旧很慢的话,没有得到确认反馈的消息会持续增长.在这种情况下,Broker有可能会停止发送消息给消费 ...

  4. rabbitmq怎样确认是否已经消费了消息_【朝夕专刊】RabbitMQ生产者/消费者消息确认...

    欢迎大家阅读<朝夕Net社区技术专刊> 我们致力于.NetCore的推广和落地,为更好的帮助大家学习,方便分享干货,特创此刊!很高兴你能成为忠实读者,文末福利不要错过哦! 上篇文章介绍了R ...

  5. rabbitmq 不同的消费者消费同一个队列_消息队列王者--rabbitMQ深入理解--工作过程、消费模式、持久化等...

    概述 之前已经对rabbitMQ的一些基本概念做了介绍和不同MQ之间的比较,今天主要对rabbitMQ的一些方面做扩展. 01 消息队列 Broker:简单来说就是消息队列服务器实体. Exchang ...

  6. kafka消息消费有延迟_消息中间件选型分析---从Kafka与RabbitMQ的对比来看全局

    有很多网友留言:公司要做消息中间件选型,该如何选?你觉得哪个比较好?消息选型的确是一个大论题,实则说来话长的事情又如何长话短说.对此笔者专门撰稿一篇内功心法:如何看待消息中间件的选型,不过这篇只表其意 ...

  7. rabbitmq怎样确认是否已经消费了消息_阿里Java研发二面:了解RabbitMQ?说说RabbitMQ可靠性投递...

    上期写到高并发下RabbitMq消息中间件你应该介么玩今天给小伙伴说说!有自己看法的也可以在评论区留言探讨,也可以转发关注下我以后会长期分享! 目录: 确保消息发送到RabbitMQ服务器 确保消息被 ...

  8. kafka多个消费者消费一个topic_kafka:一文读懂消费者背后的那点quot;猫腻quot;

    来自:z小赵 前言 经过前几篇文章的介绍,大致了解了生产者背后的运行原理.消息有生产就得有人去消费,今天我们就来介绍下消费端消费消息背后发生的那点事儿. 文章概览 消费者与消费组的"父子关系 ...

  9. rabbitmq 取消消息_认识RabbitMQ从这篇文章开始

    关于RabbitMQ 出身:诞生于金融行业的消息队列 语言:Erlang 协议:AMQP(Advanced Message Queuing Protocol 高级消息队列协议) 关键词:内存队列,高可 ...

最新文章

  1. php 多用户 判断,Laravel jwt 多表(多用户端)验证隔离的实现
  2. keil mdk5安装
  3. DCMTK:测试字符串OFString实用程序
  4. ashly理器4.8软件汉化版_AMD 处理器核心比英特尔多还更便宜?英特尔回应
  5. 数据结构(6)二叉树
  6. 使用idea创建JavaWeb项目
  7. leetcode —— 面试题68 - II. 二叉树的最近公共祖先
  8. H5炫酷特效系列3——瀑布流水特效
  9. 磁盘管理之基本操作格式化
  10. 【每日算法Day 67】经典面试题:手动开根号,你知道几种方法?
  11. 国家开放大学2021春1040公司概论题目
  12. 国内完全免费的电子书籍下载
  13. 一元云购指定中奖版源码(开源+PC+移动端)
  14. 秒搜神器everything背后的索引原理
  15. 铁路cj继电器_铁路信号继电器简介讲解
  16. 如何快速融入一个研发团队?
  17. 【经验总结—1】:研究僧常用文献搜索网站和下载方法
  18. 将apk和所需库文件编译打包到system/priv-app路径下
  19. Python:NBA球员得分数据排行爬虫
  20. 二分法的算法及应用场景(只更新了一种)

热门文章

  1. androidstudio表格中填充 宽跟长一样_Excel表格的基本操作教程,覆盖表格制作的10大知识!...
  2. 在python中构造时间戳参数的方法
  3. Python函数中4种参数的使用
  4. python中怎么取两个列表 集合的交集
  5. 分享8点超级有用的Python编程建议
  6. java的多态是什么意思_Java中的多态是什么?
  7. VMWare虚拟机打不开、繁忙无法关闭、不可恢复错误(mks)(不要在虚拟机下用win+L锁屏,不然就繁忙。。。)
  8. VSCode工程文件右侧A M U 字母的含义
  9. Intel Realsense D435 深度图为什么会出现残影?(Invalid Depth Band 无效深度带)(黑洞)
  10. python os.path.exists()(用于判断文件夹路径是否存在)