Rabbit五种消息队列学习(二) -- 简单队列
来源:互联网 发布:淘宝优惠券的公众号 编辑:程序博客网 时间:2024/05/18 02:19
Rabbit五种消息队列学习(二) – 简单队列
标签(空格分隔): RabbitMQ
队列结构图
P:消息的生产者
C:消息的消费者
红色:队列
生产者将消息发送到队列,消费者从队列中获取消息。
测试
1、连接MQ
public static Connection getConnection() throws Exception { //定义连接工厂 ConnectionFactory factory = new ConnectionFactory(); //设置服务地址 factory.setHost("192.168.116.137"); //端口 factory.setPort(5672); //设置账号信息,用户名、密码、vhost factory.setVirtualHost("/taotao"); factory.setUsername("taotao"); factory.setPassword("taotao"); // 通过工程获取连接 Connection connection = factory.newConnection(); return connection; }
2、生产者
private final static String QUEUE_NAME = "test_queue"; public static void main(String[] argv) throws Exception { // 获取到连接以及mq通道 Connection connection = ConnectionUtil.getConnection(); // 从连接中创建通道 Channel channel = connection.createChannel(); // 声明(创建)队列 channel.queueDeclare(QUEUE_NAME, false, false, false, null); // 消息内容 String message = "Hello World 2!"; channel.basicPublish("", QUEUE_NAME, null, message.getBytes()); System.out.println(" [x] Sent '" + message + "'"); //关闭通道和连接 channel.close(); connection.close(); }
3、消费者
private final static String QUEUE_NAME = "test_queue"; public static void main(String[] argv) throws Exception { // 获取到连接以及mq通道 Connection connection = ConnectionUtil.getConnection(); Channel channel = connection.createChannel(); // 声明队列 channel.queueDeclare(QUEUE_NAME, false, false, false, null); // 定义队列的消费者 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 + "'"); } }
4、查看管理平台
从上图可以看到,消息已经创建。
5、总结
这种模式相对直接,生产者和消费者直接必须声明相同的队列,模型较为单一
阅读全文
0 0
- Rabbit五种消息队列学习(二) -- 简单队列
- Rabbit五种消息队列学习(一) -- 总述
- RabbitMQ五种消息队列学习(五)--路由模式
- RabbitMQ五种消息队列学习(三)--Work模式
- Net消息队列学习(二)
- 消息队列-ActiveMQ学习笔记(二)-点对点消息实现
- 消息队列-ActiveMQ学习笔记(二)-点对点消息实现
- 消息队列 二(转)
- 消息队列五
- 消息中间件(二)消息队列
- 消息中间件(二)消息队列
- 消息中间件(二)消息队列
- RabbitMQ五种消息队列学习(六)--通配符模式(路由类型:Topic)
- RabbitMQ五种消息队列学习(四)--发布订阅模式
- ACE学习笔记(二)--消息队列(简介)
- ACE学习笔记(二)--消息队列(简介)
- Net消息队列学习(二)引子
- UCOS II 消息队列学习二
- 叠加等边三角形的绘制
- Spring Cloud (10) | Eureka 各项参数详解
- servlet 和 jsp的生命周期 工作原理
- 前端部分知识学习笔记
- linux上dubbo+zookeeper的安装与部署
- Rabbit五种消息队列学习(二) -- 简单队列
- 亚马逊免费AWS搭建VPN的坑
- 学习《怎样花两年时间去面试一个人》文章笔记
- 基于以太坊的联盟链?Quorum机制初探(下)
- 匹配数字,字符等常用正则表达式收集备用
- Reids分片集群部署
- java 将inputStream写入文件中
- hibernate的方言是什么??
- 关于xml的解析和生成