rocketmq api
时间: 2023-11-15 14:58:02 浏览: 86
RocketMQ 是一个分布式消息队列系统,提供了多种编程语言的客户端 API,包括 Java、C++、Python、Go 等。这些 API 都可以用来与 RocketMQ 服务进行交互,实现消息的发送和消费。
下面是 Java 客户端 API 的示例代码:
1. 发送消息
```
// 创建生产者
DefaultMQProducer producer = new DefaultMQProducer("producer_group");
// 设置 NameServer 地址
producer.setNamesrvAddr("localhost:9876");
// 启动生产者
producer.start();
// 创建消息对象
Message message = new Message("test_topic", "test_tag", "Hello RocketMQ".getBytes());
// 发送消息
SendResult result = producer.send(message);
// 输出发送结果
System.out.println("Send Result: " + result);
// 关闭生产者
producer.shutdown();
```
2. 消费消息
```
// 创建消费者
DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("consumer_group");
// 设置 NameServer 地址
consumer.setNamesrvAddr("localhost:9876");
// 订阅主题和标签
consumer.subscribe("test_topic", "test_tag");
// 注册消息监听器
consumer.registerMessageListener(new MessageListenerConcurrently() {
@Override
public ConsumeConcurrentlyStatus consumeMessage(List<MessageExt> msgs, ConsumeConcurrentlyContext context) {
// 处理消息
for (MessageExt msg : msgs) {
System.out.println("Received Message: " + new String(msg.getBody()));
}
// 返回消费状态
return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;
}
});
// 启动消费者
consumer.start();
// 等待消费者关闭
Thread.sleep(60000);
// 关闭消费者
consumer.shutdown();
```
以上是 Java 客户端 API 的示例代码,其他语言的 API 用法类似,只需要根据具体语言的语法进行调用即可。
阅读全文