データアウトバウンドルールは、ApsaraMQ for MQTT クライアントからのメッセージを他の Alibaba Cloud サービスに転送し、バックエンドアプリケーションが MQTT ブローカーに直接接続することなく、送信先サービスの API を介して MQTT メッセージを消費できるようにします。
仕組み
各データアウトバウンドルールは、ApsaraMQ for MQTT の親トピックと、送信先の Alibaba Cloud サービス内のリソースとの間のマッピングを定義します。ルールをアクティブ化すると、マッピングされた親トピックに公開されたすべてのメッセージは、自動的に送信先に転送されます。

ユースケース
クライアントデータレポート
多数のデバイスが MQTT プロトコルを介してステータスデータをレポートする場合、データアウトバウンドルールを使用してメッセージを ApsaraMQ for RocketMQ にルーティングし、バックエンド処理を行います。
データアウトバウンドルールを介して、ApsaraMQ for MQTT の親トピックを ApsaraMQ for RocketMQ のトピックにマッピングします。
バックエンドサービスでコンシューマーを起動し、RocketMQ トピックから読み取り、受信データを処理します。
制限事項
項目 | 制限値 | 詳細 |
インスタンスあたりのルール数 | 100 | より高いクォータをリクエストするには、DingTalk グループ 116015007918 に参加し、ApsaraMQ for MQTT テクニカルサポートチームに連絡してください。 |
ルール重複排除 | 内部リソースごとに同じタイプのルールを 1 つ | 各グループ ID は 1 つのクライアントステータス通知ルールをサポートします。各 ApsaraMQ for MQTT トピックは、1 つのデータインバウンドルールと 1 つのデータアウトバウンドルールをサポートします。 |
リージョン | 同一リージョンのみ | データソースとデータ送信先は、同じリージョンに存在する必要があります。たとえば、データソースが中国 (杭州) リージョンの ApsaraMQ for MQTT インスタンスである場合、送信先も中国 (杭州) リージョンにある必要があります。 |
ApsaraMQ for MQTT インスタンスバージョン | カーネルバージョン V3.x.x | ApsaraMQ for MQTT コンソールのインスタンスリストまたはインスタンス詳細ページからカーネルバージョンを表示します。 |
ApsaraMQ for RocketMQ インスタンスバージョン | ApsaraMQ for RocketMQ 4.0 のみ | データインバウンドルールとデータアウトバウンドルールは、ApsaraMQ for RocketMQ 4.0 インスタンスのみをサポートします。 |
トピックマッピング
データアウトバウンドルールは、親トピックレベルでマッピングします。ApsaraMQ for MQTT の特定の親トピックに公開されたすべてのメッセージは、送信先サービス内の対応するリソースにエクスポートされます。ApsaraMQ for MQTT のサブトピックは、ApsaraMQ for RocketMQ のメッセージプロパティにマッピングされます。
次の表に、サポートされているリソースマッピングを示します。
ApsaraMQ for MQTT リソース | 送信先サービス | 送信先リソース | メッセージ構造リファレンス |
トピック | ApsaraMQ for RocketMQ | トピック |
次のステップ
データアウトバウンドルールの管理:コンソールでルールを作成、変更、削除します。
ApsaraMQ for MQTT と ApsaraMQ for RocketMQ 間のメッセージ構造マッピング:MQTT メッセージフィールドと RocketMQ メッセージフィールドのマッピングについて学習します。