Cloud Message Queue

安全性と信頼性があり、高いスケーラビリティと可用性を備えたハイパフォーマンスの分散式メッセージキューサービス

メッセージキュー CMQ 概要

テンセントクラウドメッセージキュー(Cloud Message Que、CMQ)は、分散式のメッセージキューサービスであり、信頼性の高いメッセージの非同期通信メカニズムを提供し、分散環境にデプロイした様々なアプリケーション(または同じアプリケーションの異なるコンポーネント)間で送受信したメッセージをCMQキューに保存されるため、メッセージの消失を防ぎます。CMQは、マルチプロセスによる読み書きを同時に行うことをサポートし、送受信がお互いに影響しないため、各アプリケーションやコンポーネントが常に動作状態に置かれる必要がありません。

特徴

ハイパフォーマンス

メッセージキューCMQは、億レベルのメッセージの受送信と通知を効率的にサポートし、大容量のメッセージ積上げを実現し、メッセージ積上げ容量に上限が設定されていません。CMQスループットが大きく、単一クラスターのQPSは10万を超えています、業務間のメッセージ送受信ニーズを満たします。

高い可用性

CMQは、各メッセージがユーザーに返される時、メッセージデータを3つの異なる物理マシンにバックアップし、ある物理マシンに障害が起こった場合、バックグラウンドのデータレプリケーションメカニズムはデータを迅速にマイグレーションします。3つのユーザーデータのバックアップが利用できることにより、信頼性の保証率は99.999999%、業務の継続的な可用性は99.95%を保証します。Raftアルゴリズムの導入によりデータの整合性を実現します。

スケールアウト

基幹システムは業務規模に応じて、柔軟かつ自動的にメッセージキューの数とキューの保存容量を拡張し、上層業務を意識する必要がありません。北京、上海、広州などのマルチリージョンサービスを提供します。スムーズなスケーラビリティにより、単一クラスターは10万以上のQPSを提供し、論理的に単一のキューサービスは複数のクラスターにまたがってサービスを提供できます。

安全性と信頼性があり

CMQはHTTPSセキュアアクセスをサポートし、テンセントクラウドプラットフォームの多次元セキュリティ保護に基づき、ネットワーク攻撃から保護し、ビジネス機密を保護します。 同時に、メイン、サブ、協力者などのアカウント管理をサポートし、細かい粒度のリソースアクセス制御権限をサポートします。

使いやすい、メンテナンス不要

APIアクセスインターフェースとjava、C++など多くのSDKを提供し、開発コストを簡略化し、クラウドの利用に便利です。マルチ次元の監視アラーム機能をサポートし、基盤リソースのメンテナンスを意識せずに、業務開発に専念することができます。

機能

テンセントクラウドメッセージキューは、信頼性の高い非同期通信メカニズムを提供し、ユーザー向けの非同期メッセージングサービスをサポートします。
非同期通信プロトコル

メッセージの送信者はメッセージをメッセージキューに送信した後すぐに返却され、受信者の応答を待つ必要はありません。メッセージは受信者が取り出すまでキューに保存されます。メッセージの送信と受信処理は完全に非同期になっています。

応用シナリオ

メッセージが失われることはありません(WeChat)

CMQは、WeChat紅包システムの分散式のトランザクション問題に反映されていますが、WeChatアーキテクチャチームは、紅包システムにCMQを導入し、分散式のトランザクションがシステムに対するオーバヘッドさせることを避けます。CMQの紅包キューは、メッセージの送受信と保存を保証します。入金に失敗した時、アカウントシステムは持続的にCMQからプルして更新操作を再試行し、入金メッセージは失われないように保証し、入金失敗のロールバックとデータベースのポーリングなどのデメリットを回避できます。詳しい情報

高いスケーラビリティを実現します

CMQバックエンドのクラスターは、ユーザにとって透過的で感知無しであり、CMQ制御サーバは、クラスターの負荷状況に応じてリアルタイムでキューをスケジューリングします。あるキューサービスのリクエスト量が現在のクラスターのサービスしきい値を超えた場合、コントローラーサーバーはキューを複数のクラスターに分散して、並列処理量を増やすことができ、理論的には、無制限のメッセージ積上げ及び高いQPSに達することができ、ビジネスニーズに簡単に対応することができます。

CMQを利用して2つコアニーズを満たしました:

• 消費者が入金する時にお客様の販促システムは非同期です。入金情報はまずMQに書き込まれ、消費者がプルし、引取に成功したことを確認した後、コールバックインターフェースはMQ内の情報を削除します。

• 各システムのメンテナンス、アラーム、システム運営のログは、まずCMQに集合し、バックエンドのビッグデータ分析クラスターは処理能力に従って、CMQから継続的にプルし、分析します。CMQ理論的にサポートされているメッセージ積上げの数が制限されていないため、安心して利用できます。

同じ都市の災害復旧

CMQは、金融データセンター(2つのアベイラビリティーゾーン)に2セットのCMQクラスター(例え、深センの坪山、観澜)を構築することをサポートし、業務側は実際のニーズに応じてメッセージを任意のリージョンに書き込むことができます。

メッセージbodyの保存は、ビジネス特性に応じて、同期着地(強い一貫性)、非同期着地(最終的な一致性)のさまざまなポリシーを選択できます。

マスタノードのMQデータが完全に失われた場合、マスター/スレーブノードのRPOは5 min以内に処理します。テンセントクラウドはfailover、failback切り替えのAPIインターフェースを提供し、災害復旧、切替の制御権をクライアントに渡します。切り替えの準備が完了すると、データの整合性が合ってない場合は、他のDBに関連してマッチングなどの処理を行い、データを取り戻すことができます。

金融級の災害復旧対策はWebank、財付通などのコア業務をサポートします。

料金

テンセントクラウドメッセージキューCMQの費用は、リクエスト回数費用、メッセージ積上げ費用、およびトラフィック費用が含まれます。その中で、リクエスト回数費用とメッセージ積み上げ費用はまだ徴収されず、無料で利用できます。今後有料になると、正式請求の前にメール、電話、メッセージなどで通知しますので、ご安心ください。トラフィックの費用はリージョンごとに徴収し、従量課金方式で、1時間に一回精算します。