ApsaraMQ for RocketMQ は、エンタープライズレベルのインターネットアーキテクチャにおける中核プロダクトであり、プロフェッショナルなメッセージミドルウェアです。マイクロサービス、分散システム、サーバーレスアプリケーション間の信頼性の高いメッセージベースの非同期通信をサポートします。疎結合で高可用性を備えたスケーラブルな分散システムを容易に構築できます。
ApsaraMQ for RocketMQ は Alibaba Group のインフラに 11 年以上にわたり組み込まれ、Alibaba の独身の日 (11.11) E コマースイベントを 9 年間支えてきました。低レイテンシ、高い同時実行性、高可用性、高信頼性、強力なメッセージスタック機能を備え、兆単位のデータ処理にも対応します。あらゆる規模のアプリケーションコンポーネント間で、自由にデータを転送できます。
メリット

-
高パフォーマンスと低レイテンシ
Message Queue は 1,000 万レベルの QPS (1 秒あたりのクエリ数) と兆レベルのメッセージフローをサポートし、同時実行数やパフォーマンスの上限がありません。

-
高信頼性
Message Queue は同期二重書き込み、サーバー間の超三重コピーによるデータ冗長性、高速コピー切り替え技術をサポートし、データ信頼性 99.99999999% を実現します。

-
高いスケーラビリティ
Message Queue は数万規模のメッセージキューをサポートします。キュー数はエラスティックにスケーリングでき、クラスター規模も自動的にスケーリングされます。このプロセスはユーザーに対して完全に透過的です。

-
権限制御
Message Queue はメッセージの Topic とコンシューマー ID に基づいて、各メッセージの送受信権限を制御し、メッセージのセキュリティを確保します。
機能
-
高パフォーマンスと低レイテンシ
ApsaraMQ for RocketMQ は、大量のメッセージが蓄積された場合でもクラスターサービスに影響を与えることなく、高パフォーマンスを維持します。これは特にピーク時の負荷分散 (蓄洪) において重要です。
Alibaba Cloud の技術チームは、Alibaba の年次イベント「独身の日 (11-11)」E コマースイベントへの長年のサービス提供経験から、高い同時実行性によるシステム過負荷に起因するリクエスト応答時間のジッター問題を解決する手法を開発しました。2017 年の独身の日イベントで送信された 1 兆件のメッセージフローにおいて、メッセージ書き込みリクエストの 99.6% のレイテンシは 1ms 未満、99.996% のレイテンシは 10ms 未満を記録しました。
メッセージはサーバーに到着後、直ちに送信され、タイムリーなメッセージ配信を実現します。
-
高可用性、高信頼性、高スケーラビリティ
ApsaraMQ for RocketMQ は、世界中の複数のリージョンで高可用性のメッセージクラウドサービスを提供します。サーバールームとハードウェア設備は Alibaba の IDC に準拠した高い基準で構築されています。各リージョンには複数のサーバールームがデプロイされています。サーバー全体が停止した場合でも、Message Queue はアプリケーションにメッセージを効率的に配信できます。
ApsaraMQ for RocketMQ は、中国東部 1 (杭州)、中国東部 2 (上海)、中国南部 1 (深セン) などの複数の金融リージョンで同一都市マルチアクティブデプロイソリューションをサポートし、コア金融トランザクションシステムを保護します。
-
セキュアアクセス制御
ApsaraMQ for RocketMQ は、プライマリアカウントとサブアカウントの作成、ブラックリストとホワイトリストの機能、および Alibaba Cloud RAM の STS 機能をサポートしています。
ApsaraMQ for RocketMQ は、クロスアカウント認証と、プライマリアカウントおよびサブアカウントによる権限付与をサポートしています。
順序付きメッセージは、配信順序 (先入れ先出し) に従って消費されます。Message Queue は、メッセージのグローバル順序とセグメント順序をサポートしています。
-
トピックモデル (Topic)
ApsaraMQ for RocketMQ は Pub/Sub モードをサポートしています。このモードでは、プロデューサーが指定した Topic にメッセージを送信します。1 つまたは複数のコンシューマーがメッセージをサブスクライブできます。
ApsaraMQ for RocketMQ はクラスター消費とブロードキャスト消費をサポートしています。同じコンシューマー ID を使用するサブスクライバーは同じクラスターに属します。クラスター消費モードでは、各メッセージはクラスター内のいずれか 1 つのサブスクライバーが処理するだけで済みます。ブロードキャスト消費モードでは、各メッセージがクラスター内のすべてのサブスクライバーにプッシュされ、クラスター内の各サブスクライバーが少なくとも 1 回はメッセージを消費することが保証されます。
-
多様なメッセージタイプ
通常メッセージは、システム間の非同期ビジネス疎結合化、負荷分散、ロギング、ホスト間の大規模キャッシュ同期、リアルタイムコンピューティングおよび分析に使用されます。
順序付きメッセージは、パブリッシュと消費の両方が順序どおりに行われ、グローバル順序メッセージとパーティション順序メッセージに分類されます。
ApsaraMQ for RocketMQ は、トランザクション整合性を確保するために X/Open XA として知られる分散トランザクション機能を提供します。
メッセージが Message Queue サーバーに送信された後、Message Queue サーバーはメッセージ送信時刻 (現在時刻) 以降の指定された時刻 (たとえば 2016 年 1 月 1 日 15:00:00) にメッセージを送信します。
メッセージが Message Queue サーバーに送信された後、Message Queue サーバーはメッセージ送信時刻 (現在時刻) から指定された遅延時間 (たとえば 30 分後) にメッセージを送信します。
-
体系的なメンテナンスツール
ApsaraMQ for RocketMQ は、システムの問題を迅速に検出して処理するための包括的なメンテナンスツールを提供します。
Message Queue サーバー上で Topic、メッセージ ID、またはメッセージキーを指定してメッセージを検索できます。
ApsaraMQ for RocketMQ は、プロデューサーから Message Queue サーバーを経てエンドユーザーに至るメッセージフローを含むプロセス全体のデータを記録し、データを集約・分析して、メッセージのエンドツーエンドの軌跡を可視化します。
ApsaraMQ for RocketMQ は、消費済みメッセージを指定した時刻から再生でき、強力なトラブルシューティングツールとして機能します。
メッセージの消費遅延時間やスタック数に基づいて、各カスタマー ID のモニタリングおよびアラートルールを設定し、問題をタイムリーに検出できます。
ApsaraMQ for RocketMQ は、リソース管理やメンテナンス機能を実装し、アクセスを容易にする標準的な HTTP RESTful Open API (コントロール系) を提供します。
お客様シナリオ
-
疎結合
-
ピーク時負荷分散 (蓄洪)
-
分散トランザクション
-
リアルタイムコンピューティング
-
大規模キャッシュ同期
-
IM
疎結合
システム間の疎結合は、スケーラビリティと信頼性の向上に貢献する、モダンアプリケーションに最適な設計手法です。Message Queue を利用すれば、メッセージの損失なく、任意の数のアプリケーションサービスコンポーネント (システム) 間でメッセージを送受信・保存できます。クラウドアプリケーションの運用を簡素化し、より高いコスト効率を実現します。
ピーク時負荷分散 (蓄洪)
Alibaba の Tmall 11-11 E コマースフェスティバルの深夜トランザクションピーク時、春節ガラのオンライン紅包配布など、大規模イベント開催時には、外部リクエスト量がシステムの処理能力を超え、大量のリクエストが失敗する可能性があります。適切な保護対策がない場合、タイムアウトしたリクエストが蓄積して自動復旧できず、システムが崩壊し、外部向けサービス提供能力がゼロになります。これにより、ユーザー体験に深刻な影響を及ぼします。
分散トランザクション
従来のトランザクション処理では、複数のシステムやアプリケーションコンポーネント間のビジネスプロセスが大きなトランザクションで結合されるため、応答時間が長くなり、ビジネスリンクも長大化してシステムの可用性に影響を及ぼします。Message Queue の分散トランザクションメッセージを導入すると、同期処理が必要なコアリンクのビジネスと非同期処理が可能なブランチリンクのビジネスを分割し、大きなトランザクションを小さなトランザクションに分割してシステム間のやり取りを削減できます。
これにより、分散システム間のデータ整合性を確保しながら、ビジネスシステム (ショッピングカート、ポイントなど) を疎結合化し、最適なアーキテクチャ設計を実現できます。
リアルタイムコンピューティング
データは「フロー」の中で価値を生み出します。従来のデータ分析はバッチコンピューティングモデルが主流であり、リアルタイムなデータ分析を実現できませんでした。Alibaba Cloud Message Queue と主要なコンピューティングエンジン (Spark、Storm、EMR、ARMS、BeamRunner など) を組み合わせることで、リアルタイムのビジネスデータ分析を手軽に実行できます。
大規模キャッシュ同期
大規模イベントの並列セッションや大規模アプリクライアントでは、大規模キャッシュ設計を適用してリクエストの応答時間 (RT) を短縮し、ユーザー体験を向上させます。Tmall 11-11 プロモーションの場合、Shoutao アプリ、Tmall アプリ、各種専門モールで多種多様な商品が表示され、プロモーションの進行に伴いすべての商品価格がリアルタイムで変動します。商品データベースページへの大量の同時アクセスにより応答時間が長くなり、集中型キャッシュの帯域幅がボトルネックとなって、商品価格へのアクセス要求を満たせなくなります。専門モール向けのマルチキャッシュ設計では、Message Queue を使用して複数キャッシュ間の同期を実現し、顧客が商品価格にアクセスできるようにしています。
IM
Alibaba 社内では、TradeManager (即時取引コミュニケーションアプリ) と DingTalk (オフィスコミュニケーションアプリ) の両方がメッセージングサービスに Message Queue を使用しています。1 対 1 チャット、グループチャット、DingTalk 通知でのやり取りのたびに、大量のメッセージが生成されます。
