RocketMQ(三)——————javaAPI (3.单向发送消息)

 

  单向发送消息:
  这种方式主要用在不特别关心发送结果的场景,例如日志发送。(耗时非常短,一般在微秒级别)

   消息接收方式:RocketMQ(三)——————javaAPI(1.2.3.4 消息接收方式)

//官网示例
    public static void main(String[] args) throws Exception{
        // 实例化消息生产者Producer
        DefaultMQProducer producer = new DefaultMQProducer("producerGroup_name");
        // 设置NameServer的地址
        producer.setNamesrvAddr("localhost:9876");
        // 启动Producer实例
        producer.start();
        for (int i = 0; i < 100; i++) {
            // 创建消息,并指定Topic,Tag和消息体
            Message msg = new Message("TopicTest",
                "TagA",
                ("Hello RocketMQ " + i).getBytes(RemotingHelper.DEFAULT_CHARSET));
            // 发送单向消息,没有任何返回结果
            producer.sendOneway(msg);
        }
        // 如果不再发送消息,关闭Producer实例。
        producer.shutdown();
    }

    //简单理解
    public static void main(String[] args) throws Exception {

        DefaultMQProducer producer = new DefaultMQProducer("rocketMq1");

        //设置nameserver地址:
        producer.setNamesrvAddr("127.0.0.1:9876");
        producer.start();

        Message message1 = new Message("myTopic001","rocketMq1 第一次发送 sendOneway".getBytes());
        
        //"TAG-B" -- 标签,   "KEY-B" ---keys
        //Message message1 = new Message("myTopic001","TAG-B","KEY-B","rocketMq1 第一次发送 TAG-B".getBytes());

        // 单向消息
        //只发送消息,不等待服务器响应,只发送请求不等待应答。此方式发送消息的过程耗时非常短,一般在微秒级别。
        producer.sendOneway(message1);

//        producer.shutdown();
        System.out.println("生产者下线!");

    }

 

posted @ 2021-03-30 17:26  Li&Fan  阅读(118)  评论(0编辑  收藏  举报