全部产品
云市场

环境准备(v2.0.0)

更新时间:2019-09-13 21:59:49

本文介绍使用 C++ SDK v2.0.0 版本接入消息队列 MQ 所需完成的准备工作、使用说明以及注意事项,以便后续使用 C++ SDK 收发消息。

使用前,请注意以下几点:

  • 本文仅针对 C++ SDK v2.0.0 版本进行说明,若您需从当前使用的 v1.x.x 版本的 SDK 升级至 v2.0.0,请参见环境准备(v1.x.x)完成升级。

  • 代码里涉及到的 Topic 和 Group ID,需要到控制台上创建。Message Tag 可以完全由应用自定义,具体创建过程请参见主账号 - 快速入门中的步骤二:创建资源

  • 使用消息队列 MQ 服务的应用程序需要部署在阿里云 ECS 上。

SDK 下载

v2.0.0 版本的 C++ SDK 暂时仅支持 Linux 操作系统。C++ SDK 的下载链接,请参见版本说明

下载完成后选择对应操作系统内核的版本进行解压,会有如下目录结构,各目录的说明如下:

  • demos/

    包含了普通消息发送、Oneway 消息发送、顺序消息发送、普通消息消费、顺序消息消费等例子,还包含了 CMakeList.txt 用于 demos 的编译和管理。

  • include/

    包含用户自己编写的程序需要的头文件。

  • lib/

    包含基于 x86_64 的动态库,分别为接口库(libonsclient4cpp.so)和内核库(lib消息队列 MQ_client_core.so)。

  • changelog

    新版本发布解决的问题和引入的新特性列表。

Linux C++ SDK 动态库方案

自 2019 年 6 月 28 日起,新版本的 SDK 将只提供动态库方案。消息队列 MQ 的库文件在 lib/ 目录下,需要业务方生成可执行文件时链接 lib消息队列 MQ_client_core.solibonsclient4cpp.so。由于 demos 引入了 C++ 11 的特性和使用 CMake 来管理,需要提前安装 CMake 3.0 以上版本和 g++ 4.8 及以上版本。

注意:由于 GCC 5.x 及以上版本引入了 Dual ABI,编译链接时,请添加 -D_GLIBCXX_USE_CXX11_ABI=0 编译选项。

demos 的使用方法如下:

  1. cd aliyun-mq-linux-cpp-sdk //下载的 SDK 解压后的路径
  2. cd demos //进入 demos 目录,修改 demos 文件,填入自己在消息队列 MQ 控制台创建的 Topic 和 Key 等相关的信息
  3. cmake . //检测依赖和生成编译脚本
  4. make 执行编译操作
  5. cd bin //到生成的可执行文件目录下运行程序

更多信息