RocketMQ快速入门:集成java客户端实现各类消息发送|异步、同步、顺序、单向、延迟、事务附带源码
import org.apache.rocketmq.client.producer.DefaultMQProducer;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.common.message.Message;
public class Producer {
public static void main(String[] args) throws Exception {
// 1. 创建消息生产者producer,并指定组名
DefaultMQProducer producer = new DefaultMQProducer("group1");
// 2. 指定Namesrv地址(这里应填写实际的Name Server地址)
producer.setNamesrvAddr("localhost:9876");
// 3. 启动producer
producer.start();
try {
// 4. 创建消息对象,指定topic、tag和消息体
Message msg = new Message("TopicTest" /* Topic */, "TagA" /* Tag */,
("Hello RocketMQ " + i).getBytes(RemotingHelper.DEFAULT_CHARSET) /* Message body */
);
// 5. 发送消息
// 同步发送
SendResult sendResult = producer.send(msg);
// 异步发送
// producer.send(msg, new SendCallback() {
// @Override
// public void onSuccess(SendResult sendResult) {
// // 处理发送成功的结果
// }
// @Override
// public void onException(Throwable e) {
// // 处理发送失败的情况
// }
// });
// 6. 打印发送结果
System.out.printf("%s%n", sendResult);
} catch (Exception e) {
e.printStackTrace();
}
// 7. 关闭生产者
producer.shutdown();
}
}
这段代码展示了如何使用RocketMQ Java客户端发送同步消息。首先创建一个消息生产者,设置Name Server地址,然后启动它。之后创建一个消息对象并发送,发送结果会被打印出来。最后关闭生产者。这是一个简单的入门示例,展示了如何与RocketMQ进行交互。
评论已关闭