zoukankan      html  css  js  c++  java
  • rocketmq广播消息的(五)

    一、简介

    广播消费指的是:一条消息被多个consumer消费,即使这些consumer属于同一个ConsumerGroup,消息也会被ConsumerGroup中的每个Consumer都消费一次,广播消费中ConsumerGroup概念可以认为在消息划分方面无意义。

    二、代码

    /**
     * 发布订阅消息生产者
     */
    public class BroadcastProducer {
        public static void main(String[] args) throws MQClientException, InterruptedException, RemotingException, MQBrokerException, UnsupportedEncodingException {
            // 1. 创建生产者对象
            DefaultMQProducer producer = new DefaultMQProducer("GROUP_TEST");
    
            // 2. 设置NameServer的地址,如果设置了环境变量NAMESRV_ADDR,可以省略此步
            producer.setNamesrvAddr("192.168.32.128:9876");
    
            // 3. 启动生产者
            producer.start();
    
            // 4. 生产者发送消息
            for (int i = 0; i < 10; i++) {
                Message message = new Message("TopicTest", "TagA", "OrderID_" + i, ("Hello Broadcast:" + i).getBytes(RemotingHelper.DEFAULT_CHARSET));
    
                SendResult result = producer.send(message);
    
                System.out.printf("发送结果:%s%n", result);
            }
    
            // 5. 停止生产者
            producer.shutdown();
        }
    }
    /**
     * 发布订阅消息生产者
     */
    public class BroadcastProducer {
        public static void main(String[] args) throws MQClientException, InterruptedException, RemotingException, MQBrokerException, UnsupportedEncodingException {
            // 1. 创建生产者对象
            DefaultMQProducer producer = new DefaultMQProducer("GROUP_TEST");
    
            // 2. 设置NameServer的地址,如果设置了环境变量NAMESRV_ADDR,可以省略此步
            producer.setNamesrvAddr("192.168.32.128:9876");
    
            // 3. 启动生产者
            producer.start();
    
            // 4. 生产者发送消息
            for (int i = 0; i < 10; i++) {
                Message message = new Message("TopicTest", "TagA", "OrderID_" + i, ("Hello Broadcast:" + i).getBytes(RemotingHelper.DEFAULT_CHARSET));
    
                SendResult result = producer.send(message);
    
                System.out.printf("发送结果:%s%n", result);
            }
    
            // 5. 停止生产者
            producer.shutdown();
        }
    }
    这短短的一生我们最终都会失去,不妨大胆一点,爱一个人,攀一座山,追一个梦
  • 相关阅读:
    解决后退网页已过期或刷新询问是否重新提交表单的问题
    一行代码获取中文星期
    单例模式弹出窗体实现
    JAVA实现冒泡排序
    关于BufferedWriter.write超过30W条数据写入过慢问题。
    Ibatis的简单介绍
    链接注入(便于跨站请求伪造)(AppScan扫描结果)
    会话标识未更新(AppScan扫描结果)
    跨站点脚本编制实例(AppScan扫描结果)
    深入Java核心 Java内存分配原理精讲
  • 原文地址:https://www.cnblogs.com/xing1/p/15538374.html
Copyright © 2011-2022 走看看