RabbitMQ 入门
ConnectionFactory factory = new ConnectionFactory();factory.setHost("localhost");Connection connection = factory.newConnection();Channel channel = connection.createChannel();channel.queueDeclare(QUEUE_NAME, false, false, false, null); //(如果没有就)创建QueueString message = "Hello World!";channel.basicPublish("", QUEUE_NAME, null, message.getBytes());//以byte的方式发布System.out.println(" [x] Sent '" + message + "'");channel.close();connection.close();
ConnectionFactory factory = new ConnectionFactory();factory.setHost("localhost");Connection connection = factory.newConnection();Channel channel = connection.createChannel();channel.queueDeclare(QUEUE_NAME, false, false, false, null);//看一下Queue是否存在 QueueingConsumer consumer = new QueueingConsumer(channel);channel.basicConsume(QUEUE_NAME, true, consumer);while (true) {QueueingConsumer.Delivery delivery = consumer.nextDelivery();//阻塞,直到接收到一条消息String message = new String(delivery.getBody());System.out.println(" [x] Received '" + message + "'");}
String EXCHANGE_NAME = "logs";ConnectionFactory factory = new ConnectionFactory(); factory.setHost("localhost"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); // 设置 exchange 类型 channel.exchangeDeclare(EXCHANGE_NAME /*exchange名称*/, "fanout"/*类型*/); // 发布消息时,指定 exchange 名称 channel.basicPublish( EXCHANGE_NAME , "", null, message.getBytes()); channel.close(); connection.close();
ConnectionFactory factory = new ConnectionFactory(); factory.setHost("localhost"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); // 设置exchange名称和类型 channel.exchangeDeclare(EXCHANGE_NAME, "fanout"); // 创建一个临时的、带有随机名称的Queue,用来与 exchange 绑定 String queueName = channel.queueDeclare().getQueue(); hannel.queueBind(queueName, EXCHANGE_NAME, ""); // 绑定 System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); QueueingConsumer consumer = new QueueingConsumer(channel); channel.basicConsume(queueName, true, consumer); while (true) {QueueingConsumer.Delivery delivery = consumer.nextDelivery();String message = new String(delivery.getBody());System.out.println(" [x] Received '" + message + "'");}
转载于:https://www.cnblogs.com/caca/p/rabbitmq_demo.html
RabbitMQ 入门相关推荐
- RabbitMQ 入门系列(10)— RabbitMQ 消息持久化、不丢失消息
消息要保持"持久化",即不丢失,必须要使得消息.交换器.队列,必须全部 "持久化". 1. 生产者怎么确认 RabbitMQ 已经收到了消息? # 打开通道的确 ...
- rabbitMQ入门程序
1.生产者 /*** rabbitMQ入门程序消费者** @author xiaoss* @date 2020年10月27日 22:02*/ public class Producer01 {//队列 ...
- rabbitmq 入门demo
rabbitmq 入门demo http://www.cnblogs.com/jimmy-muyuan/p/5428715.html http://www.cnblogs.com/shanyou/p/ ...
- RabbitMQ 入门:2. Exchange 和 Queue
上文RabbitMQ 入门:1. Message Broker(消息代理)提到过 RabbitMQ 实现了 AMQP 这个协议(RabbitMQ 所支持的 AMQP 的版本是 0.9.1),这个协议的 ...
- RabbitMQ入门学习系列(二),单生产者消费者
友情提示 我对我的文章负责,发现好多网上的文章 没有实践,都发出来的,让人走很多弯路,如果你在我的文章中遇到无法实现,或者无法走通的问题.可以直接在公众号<爱码农爱生活 >留言.必定会再次 ...
- RabbitMQ入门:路由(Routing)
在上一篇博客<RabbitMQ入门:发布/订阅(Publish/Subscribe)>中,我们认识了fanout类型的exchange,它是一种通过广播方式发送消息的路由器,所有和exch ...
- RabbitMQ入门-Topic模式
上篇<RabbitMQ入门-Routing直连模式>我们介绍了可以定向发送消息,并可以根据自定义规则派发消息.看起来,这个Routing模式已经算灵活的了,但是,这还不够,我们还有更加多样 ...
- RabbitMQ入门:发布/订阅(Publish/Subscribe)
在前面的两篇博客中 RabbitMQ入门:Hello RabbitMQ 代码实例 RabbitMQ入门:工作队列(Work Queue) 遇到的实例都是一个消息只发送给一个消费者(工作者),他们的消息 ...
- RabbitMQ入门到精通
RabbitMQ 1. 消息中间件概述 1.1. 为什么学习消息队列 电子商务应用中,经常需要对庞大的海量数据进行监控,随着网络技术和软件开发技术的不断提高,在实战开发中MQ的使用与日俱增,特别是Ra ...
- rabbitmq入门(四)Topics主题模式
文章目录 Topics主题模式 代码实现 测试 总结 下一章 Topics主题模式 交换机类型为 topics - 将路由和某个模式匹配,# 匹配一个或者多个,* 匹配一个.例如交换机绑定的routi ...
最新文章
- linux 26,Linux常用26条命令
- EPSON机器人SPLE+语言_简单实例
- Windows下编译tensorflow-gpu教程
- Fiddler的介绍和配置
- php微信小程序多图上传,tp5实现微信小程序多图片上传到服务器功能
- 3个月亏17亿,贝壳释放了什么信号?
- 第十天 Oracle安装前准备工作
- C语言每日一题之No.12
- ajax异步下载文件并判断状态
- 尚观嵌入式c语言视频教程
- Multistage GAN for Fabric Defect Detection 用于织物检测的多级GAN
- Postman中文版 !!!!傻瓜教程
- 物联网与嵌入式系统的关系
- win7系统如何升级安装win11正式版,win7升级win11系统的方法
- 微信公众平台php开发包
- oracle rebuild online,alter index rebuild
- uniapp:使用百度API提取身份证信息(微信小程序适用)
- 一切就绪,2019年新型智慧城市峰会将展现怎样的“新益阳”
- 微信小程序开发之大转盘 抽奖
- 音频和视频的基础知识
热门文章
- Call apply 用法
- servlet文件上传blob_servlet实现从oracle数据库的blob字段中读出文件并显示 | 学步园...
- junction.exe 放在哪_情侣拥抱的5种姿势,可以看出感情深浅,你们属于哪一种?...
- C 语言编程 — 高级数据类型 — 数组
- 常见蓝牙模块介绍和AT指令
- 浅谈工程师的调试法宝(5) -JScope的应用_MCU
- JS面向对象一:MVC的面向对象封装
- leetcode题目解答报告(1)
- msf 之 webshell 提权
- sscanf用法(转)