全部產品
Search
文件中心

ApsaraMQ for RocketMQ:環境準備(v2.x.x)

更新時間:Jun 30, 2024

本文介紹使用C++ SDK v2.x.x版本接入雲訊息佇列 RocketMQ 版所需完成的準備工作、使用說明以及注意事項,以便後續使用C++ SDK收發訊息。

重要
  • 推薦您使用最新的RocketMQ 5.x系列SDK,5.x系列SDK作為主力研發版本,和雲訊息佇列 RocketMQ 版5.x服務端完全相容,提供了更全面的功能並支援更多增強特性。更多資訊,請參見5.x系列SDK
  • RocketMQ 4.x/3.x系列SDK和ONS系列SDK後續僅做功能維護,建議僅存量業務使用。

使用前,請注意以下幾點:

  • 本文僅針對C++ SDK v2.x.x版本進行說明,若您需要從當前使用的v1.x.x版本的SDK升級至v2.x.x,請參見環境準備(v1.x.x)完成升級。

  • 代碼裡涉及到的Topic和Group ID,需要到控制台上建立。Message Tag可以完全由應用自訂,更多資訊,請參見建立資源

  • 使用雲訊息佇列 RocketMQ 版服務的應用程式需要部署在阿里雲ECS上。

v2.x.x版本的C++ SDK暫時僅支援Linux作業系統,系統版本包含CentOS 6(RHEL 6)和CentOS 7(RHEL 7)系列。C++ SDK的下載連結,請參見版本說明

下載完成後選擇對應作業系統核心的版本進行解壓,會有如下目錄結構,各目錄的說明如下:

  • demos/

    包含了普通訊息發送、Oneway訊息發送、順序訊息發送、普通訊息消費、順序訊息消費等例子,還包含了CMakeList.txt用於demos的編譯和管理。

  • include/

    包含您自己編寫的程式需要的標頭檔。

  • lib/

    包含基於x86_64的動態庫,分別為介面庫(libonsclient4cpp.so)和核心庫(librocketmq_client_core.so)。

  • changelog

    新版本發布解決的問題和引入的新特性列表。

Linux C++ SDK動態庫方案

自2019年6月28日起,新版本的SDK將只提供動態庫方案。雲訊息佇列 RocketMQ 版的庫檔案在lib/目錄下,需要業務方產生可執行檔時連結librocketmq_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的使用方法如下:

# 下載的SDK解壓後的路徑。
cd aliyun-mq-linux-cpp-sdk 
# 進入demos目錄,修改demos檔案,填入自己在訊息佇列RocketMQ版控制台建立的Topic和Key等相關的資訊。
cd demos 
# 檢測依賴和產生編譯指令碼。
cmake . 
# 執行編譯操作。
make 
# 到產生的可執行檔目錄下運行程式。
cd bin 

更多資訊

範例程式碼