RocketMQ快速入门之发送消息(异步)

package cn.learn.rocketmq.sendmsg;

import org.apache.rocketmq.client.producer.DefaultMQProducer;
import org.apache.rocketmq.client.producer.SendCallback;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.common.message.Message;

public class AsyncProducer {

    public static void main(String[] args) throws Exception {
        DefaultMQProducer producer = new DefaultMQProducer("learn");

        producer.setNamesrvAddr("localhost:9876");

        producer.start();

        // 发送消息
        String msg = "我的第一个异步发送消息!";
        Message message = new Message("my-topic", msg.getBytes("UTF-8"));
        producer.send(message, new SendCallback() {
            public void onSuccess(SendResult sendResult) {
                System.out.println("发送成功了!" + sendResult);
                System.out.println("消息id:" + sendResult.getMsgId());
                System.out.println("消息队列:" + sendResult.getMessageQueue());
                System.out.println("消息offset值:" + sendResult.getQueueOffset());
            }

            public void onException(Throwable e) {
                System.out.println("消息发送失败!" + e);
            }
        });

//        producer.shutdown();
    }
}
发送成功了!SendResult [sendStatus=SEND_OK, msgId=C0A80106D3A418B4AAC299BE52430000, offsetMsgId=3B6E8A9100002A9F00000000000000B9, messageQueue=MessageQueue [topic=my-topic, brokerName=broker_learn_im, queueId=5], queueOffset=0]
消息id:C0A80106D3A418B4AAC299BE52430000
消息队列:MessageQueue [topic=my-topic, brokerName=broker_learn_im, queueId=5]
消息offset值:0
发布了1937 篇原创文章 · 获赞 46 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/Leon_Jinhai_Sun/article/details/104118558