ApsaraMQ for MQTT は、モバイルインターネットおよびモノのインターネット (IoT) アプリケーション向けの軽量なメッセージ指向ミドルウェアです。従来のメッセージ指向ミドルウェアはマイクロサービス間でメッセージを送信しますが、ApsaraMQ for MQTT はデバイスとクラウド間でメッセージを送信し、大規模な双方向通信を可能にします。
例:
温度センサーのフリートが 5 秒ごとに測定値をクラウドのアナリティクスダッシュボードに報告します。
バックエンドサービスが何千ものスマートデバイスにファームウェアアップデートコマンドを同時にプッシュします。
2つのモバイルアプリが、バックエンドサーバーを経由せずに MQTT プロトコルを介してインスタントメッセージを交換します。
用語
| 用語 | 定義 |
|---|---|
| トピック | メッセージの主要な分類子です。プロデューサーはトピックにメッセージを送信し、コンシューマーはトピックをサブスクライブしてメッセージを受信します。 |
| プロデューサー | トピックにメッセージを作成して送信するパブリッシャーです。 |
| コンシューマー | トピックからメッセージを受信して処理するサブスクライバーです。 |
| メッセージ | プロデューサーからトピックに送信され、1 つ以上のコンシューマーに配信されるデータペイロードです。 |
| ルール | ApsaraMQ for MQTT と他の Alibaba Cloud サービス間でデータを交換するリソースです。 |
メッセージングモデル
ApsaraMQ for MQTT は、2 つのメッセージングモデルをサポートしています。
デバイスとクラウド間の通信
デバイスは ApsaraMQ for MQTT に接続し、クラウドアプリケーションや他の Alibaba Cloud サービスとデータを交換します。このモデルは、次のようなシナリオをカバーします:
スマートサーモスタットが 10 秒ごとに温度、湿度、バッテリー残量をクラウドのモニタリングダッシュボードに報告します。
バックエンドサービスが現場のデバイスに構成の更新や再起動コマンドを送信します。

デバイス間の通信
デバイスは ApsaraMQ for MQTT を介して直接相互に通信します。プロデューサーとコンシューマーの両方が MQTT プロトコルを介して接続します。このモデルは、次のようなシナリオをカバーします:
ユーザーは、サブ秒レベルのメッセージ配信が可能なインスタントメッセージングアプリを介してチャットします。
モバイルアプリが、バックエンドサーバーを経由せずにスマートホームデバイス (照明の調整やドアの施錠など) をコントロールします。

開発者のロール
これらのモデルは、2 つの開発者のロールに対応します:
| ロール | 範囲 | SDK リファレンス |
|---|---|---|
| デバイス開発者 | IoT デバイスやモバイルエンドポイントで実行されるクライアント側アプリケーションを構築します。 | SDK のダウンロード |
| クラウド開発者 | デバイスデータを処理したり、コマンドを送信したりするサーバー側アプリケーションを構築します。 | コントロール API の SDK の入手 |
メリット
幅広いプロトコルとプラットフォームのサポート
ApsaraMQ for MQTT は、MQTT V3.1.1 をサポートする SDK と互換性があり、WebSocket 接続をサポートしています。これにより、ほとんどのモバイル開発プラットフォームやプログラミング言語をカバーし、既存の MQTT 実装からのシームレスな移行が可能になります。
ミリ秒レベルのメッセージングと大規模なスケーラビリティ
| メトリック | 機能 |
|---|---|
| レイテンシー | ミリ秒単位でのメッセージ配信 |
| 接続済みデバイス | 数千万の同時デバイス接続 |
| 同時メッセージ数 | 数百万の同時メッセージ |
| スループット | 数兆のメッセージトランザクション |
| アーキテクチャ | 単一障害点のない分散設計。各コンポーネントの無制限な水平スケールアウトが可能 |
デバイスレベルのセキュリティ
| 機能 | 説明 |
|---|---|
| デバイスレベルの権限管理 | 個々のデバイスレベルで権限を管理 |
| 一時的なトークン | デバイス認証のために短期的な認証情報を発行 |
| 暗号化されたトランスポート | Transport Layer Security (TLS) V1.2 を使用して、転送中のすべてのデータを保護 |
ApsaraMQ for RocketMQ との統合
ApsaraMQ for MQTT と ApsaraMQ for RocketMQ の間でメッセージを交換することで、デバイスとクラウドアプリケーション間の信頼性が高く、高スループットな双方向通信を実現します。この統合により、軽量なデバイスメッセージングとエンタープライズグレードのメッセージキューイングが連携します。
利用シーン
ApsaraMQ for MQTT は、モバイルインターネットや IoT の幅広いユースケースに対応します:
| シナリオ | 例 |
|---|---|
| モバイルライブストリーミング | ビデオストリームと並行して、コメント、いいね、ギフトなどのリアルタイムのインタラクティブメッセージを数百万の同時視聴者に配信します。 |
| 自動車のインターネット (IoV) | コネクテッドカーからテレメトリ (速度、燃料レベル、位置情報) を収集し、OTA (Over-The-Air) アップデートやナビゲーションコマンドをプッシュします。 |
| 決済 | 決済端末と処理バックエンドの間で、トランザクション通知やステータス更新をリアルタイムで送信します。 |
| スマートケータリング | キッチンディスプレイシステム、注文用タブレット、管理プラットフォームを接続し、拠点間でリアルタイムの注文同期を実現します。 |
| インスタントメッセージ (IM) | モバイルまたは Web クライアント間で、サブ秒レベルのレイテンシーでチャットメッセージを配信します。 |

クイックスタート
ApsaraMQ for MQTT の購入ページで ApsaraMQ for MQTT インスタンスを購入してください。