すべてのプロダクト
Search
ドキュメントセンター

ApsaraMQ for RocketMQ:SDK リファレンスの概要

最終更新日:May 19, 2026

ApsaraMQ for RocketMQ は、さまざまなプロトコルを使用する複数の SDK バージョンを提供しています。インスタンスタイプとワークロードに合った SDK を選択してください。

新規プロジェクトには、RocketMQ 5.x gRPC SDK の使用を推奨します。この SDK は最も多くの言語をサポートし、すべての新機能が提供され、5.x シリーズのインスタンスで動作します。ブロードキャスト消費やストリーム消費など、古い SDK にしかない機能が必要な場合は、代わりに対応する SDK を使用してください。

SDK バージョン

次の表は、各 SDK バージョンのプロトコル、インスタンスの互換性、および推奨事項を比較したものです。

RocketMQ 5.x gRPC SDK

RocketMQ 5.x Remoting SDK

RocketMQ 4.x/3.x SDK

RocketMQ ONS TCP 1.x SDK

RocketMQ ONS TCP 2.x SDK

RocketMQ ONS HTTP SDK

プロトコル gRPC プロトコル v2 Remoting プロトコル Remoting プロトコル Remoting プロトコル gRPC プロトコル v1 HTTP プロトコル
アクセス可能なインスタンス 5.x シリーズのインスタンス 5.x シリーズのインスタンス、4.x シリーズのインスタンス 5.x シリーズのインスタンス、4.x シリーズのインスタンス 5.x シリーズのインスタンス、4.x シリーズのインスタンス 4.x シリーズのインスタンス 4.x シリーズのインスタンス
推奨事項 推奨します。複数の言語をサポートします。すべての新機能と最適化は、この SDK を対象としています。5.x gRPC SDK の一部の機能が要件を満たさない場合は、5.x Remoting SDK を使用できます。 既存のアプリケーションはこれらの SDK バージョンを引き続き使用できます。5.x シリーズのインスタンスには互換性があります。 既存のアプリケーションはこれらの SDK バージョンを引き続き使用できます。5.x シリーズのインスタンスには互換性があります。 既存のアプリケーションはこれらの SDK バージョンを引き続き使用できます。5.x シリーズのインスタンスには互換性があります。 これらのバージョンのクライアントは使用しないでください。新機能や最適化は提供されません。4.x シリーズのインスタンスにのみアクセスできます。 これらのバージョンのクライアントは使用しないでください。新機能や最適化は提供されません。4.x シリーズのインスタンスにのみアクセスできます。

SDK バージョン間の機能比較

次の表では、チェックマーク (✅) はサポートを、X は非サポートを示します。

機能

5.x gRPC

5.x Remoting

4.x/3.x

ONS TCP 1.x

ONS TCP 2.x

ONS HTTP

通常、順序、トランザクション、スケジュールメッセージの送信
軽量なトピックベースのモデル
並行消費
メッセージの順序消費
順序メッセージの並行消費の最適化
ブロードキャスト消費
ストリーム消費 (Flink などへの接続)
メッセージトレース バージョン 4.5.2 以降でサポート
プロデューサーコンシューマーのクライアントメトリクスデータ
グレースフルシャットダウン 5.x シリーズのインスタンスでのみサポート
バッチ送信
優先度メッセージ
説明

優先度メッセージを使用すると、メッセージに優先度レベルを割り当てることができ、優先度の高いメッセージが低いメッセージよりも先に消費されます。この機能は RocketMQ 5.x gRPC SDK 専用です。

制限

  • 同じコンシューマーグループ内の異なるコンシューマーは、同じプロトコルをサポートするクライアントを使用する必要があります。

  • 同じコンシューマーグループに対して、Remoting プロトコル SDK から gRPC プロトコル SDK へのグレースケールアップグレードを実行する場合:

    • メッセージを順序通りに配信するコンシューマーグループは、このアップグレードをサポートしていません。

    • メッセージを並行して配信するコンシューマーグループは、スムーズなアップグレードをサポートしています。アップグレード中に少数のメッセージが重複する可能性があります。

  • 同じ順序トピックにメッセージを送信するには、すべてのプロデューサークライアントが同じプロトコルを使用する必要があります。プロトコルは Remoting プロトコルまたは gRPC プロトコルのいずれかである必要があります。

  • メッセージを順序通りに配信するコンシューマーグループの場合、次の順序で操作が行われると、コンシューマーオフセットがロールバックすることがあります:

    1. コンシューマーグループが最初に Remoting プロトコル SDK を使用します。

    2. SDK が gRPC プロトコル SDK にアップグレードされます。

    3. SDK が Remoting プロトコル SDK にロールバックされます。

  • RocketMQ ONS TCP 2.x SDK は一部のリージョンでのみ利用可能です。詳細については、「制限」をご参照ください。

RocketMQ 5.x gRPC SDK

5.x gRPC SDK は、Java、C#、Go、Python、C++ をサポートしています。すべての言語で gRPC プロトコル v2 を使用します。

言語

リファレンス

Java SDK バージョンガイド | 環境の準備 | サンプルコード
C# SDK バージョンガイド | 環境の準備 | サンプルコード
Go SDK バージョンガイド | 環境の準備 | サンプルコード
Python SDK バージョンガイド | 環境の準備 | サンプルコード
C++ SDK バージョンガイド | 環境の準備 | サンプルコード

RocketMQ 5.x Remoting SDK

5.x Remoting SDK は Java のみで利用可能で、Remoting プロトコルを使用します。

言語

リファレンス

Java SDK バージョンガイド | 環境の準備 | サンプルコード

RocketMQ 4.x/3.x SDK

4.x/3.x SDK は Java と C++ で利用可能で、Remoting プロトコルを使用します。

言語

リファレンス

Java SDK バージョンガイド | 環境の準備 | サンプルコード
C++ SDK バージョンガイド | 環境の準備 | サンプルコード

RocketMQ ONS TCP 1.x SDK

ONS TCP 1.x SDK は Java、C++、.NET で利用可能で、Remoting プロトコルを使用します。

言語

リファレンス

Java SDK バージョンガイド | 環境の準備 | サンプルコード
C++ SDK バージョンガイド | 環境の準備 | サンプルコード
.NET SDK バージョンガイド | 環境の準備 | サンプルコード