RocketMQ C++ SDK 概述 本文介绍使用 RocketMQ C++(4.x) 客户端 SDK,访问分布式消息服务RocketMQ,帮助您更好地理解消息收发的完整过程。 前置条件 安装gccc++ 4.8.2 及以上版本,需支持C++11。 安装cmake 2.8.0及以上版本。 安装automake 1.11.1及以上版本。 安装autoconf 2.65及以上版本。 安装libtool 2.2.6 及以上版本。 环境准备 需要在客户端环境安装 RocketMQClientCPP 库,根据官方文档进行安装即可: 安装 CPP 动态库,推荐使用 master 分支构建。 在项目中引入 RocketMQClientCPP 相关头文件及动态库,详见实例代码头文件。 使用g++命令获得可执行文件,如: g++ o xxxProducer xxxProducer.cpp lrocketmq lpthread lz ldl lrt 使用 C++ SDK 收发普通消息 发送普通消息 include include include include include "rocketmq/DefaultMQProducer.h" using namespace std; using namespace rocketmq; int main(){ DefaultMQProducer producer("groupname"); //填写分布式消息服务RocketMQ版的接入点 producer.setNamesrvAddr("your access point"); //填写分布式消息服务RocketMQ版的ak、sk producer.setSessionCredentials("ak", "sk", "channel"); producer.start(); int count 64; for (int i 0; i < count; ++i) { //填入主题名、tag名、消息body MQMessage msg("topicname", "TAG", "msg content"); try { SendResult sendResult producer.send(msg); std::cout << "SendResult:" << sendResult.getSendStatus() << ", Message ID: " << sendResult.getMsgId() << std::endl; thisthread::sleepfor(chrono::seconds(1)); } catch (MQException e) { std::cout << "ErrorCode: " << e.GetError() << " Exception:" << e.what() << std::endl; } } std::cout << "Send " << count << " messages OK, costs" << std::endl; producer.shutdown(); return 0; }