Message Service

アプリケーション間のメッセージ転送をスムーズにするメッセージキューおよび通知サービス

Alibaba Cloud Message Service は分散型のメッセージキューおよび通知サービスです。同時実行操作をサポートしており、アプリケーションと分離されたシステム間でのメッセージ転送を容易にします。ユーザーは分散アプリケーション間でのデータの移行、複雑なタスクの実行、分離されたフォールトトレラントアプリケーションの構築をすることができます。

Message Service は従量課金サービスであるため、前払いが不要で、メッセージングプラットフォームを所有して拡張する手間を省くことができます。さらに、Message Service はメンテナンスフリーです。

利点

安全性
認証メカニズムでマルチレベルセキュリティを提供します。
メッセージはキューに保管され、不正アクセスから保護されます。
キュー属性の設定がカスタマイズ可能
キュー属性をカスタマイズすることで、多様なアプリケーションシナリオに適合させることができます。
遅延のカスタマイズ、キューの優先度の定義ができます。
RESTful API との互換性
RESTful API にアクセスしてメッセージキューの作成と他の Alibaba Cloud サービスとの統合を簡単に実行し、堅牢な分散されたデプロイメントを構築できます。
同時読み書き
複数のプロデューサーとコンシューマーが同じメッセージキューで同時に操作することが可能です。

特徴

  • シンプル

    SendMessage、ReceiveMessage、DeleteMessage などの API で簡単に操作可能なツールです。


    標準の HTTP RESTful インターフェイスのメリットを活用できます。


    プラットフォームに依存しない、メンテナンス不要のサービスです。


    Alibaba Cloud の他のサービスと互換性があります。

  • 遅延メッセージ

    遅延メッセージに対応しています。
    DelaySeconds パラメーターで遅延時間を定義できます。このパラメーターは、SendMessage を使用するときに指定できます。

  • 遅延キュー

    CreateQueue および SetQueueAttribute を使用して、キューサービスの遅延時間を指定できます。

  • 信頼性

    複数のアベイラビリティゾーンでデータを迅速にバックアップし、99.9999999% のデータの信頼性を実現します。


    最大 99.99% のサービス可用性を活用します。


    有効期間内での正常なメッセージ配信を実現します。

  • 多様なキュー属性

    プレーンキューイング、遅延キューイング、優先度キューイングを含む、カスタマイズ可能な幅広いメッセージキューサービスモードを提供しています。40 以上のプロダクトを無料で体験できます。

よくある質問

1. Alibaba Cloud Message Service の主な機能にはどのようなものがありますか。

Message Service は、以下のアプリケーションシナリオで使用できます。

• Alibaba Cloud Message Service を ECS (Elastic Compute Service) 、OSS (Object Storage Service) などの他のプロダクトと連携させることで、信頼性が高く、フォールトトレラントで柔軟なアプリケーションを構築できます。
•キュー内の各メッセージが 1 つのタスクを表し、1 つのプロセスを完了するよう、Message Service を作業キューとして使用することができます。このように、プロセスを分離して回復性の高いアプリケーションを構築することができます。ただし、1 つ以上の ECS インスタンスでキューから複数のタスクを読み取り、実行することができます。
•サービスプロセスの主要イベントの通知を保管することも可能です。この場合、各イベントがキューに対応する 1 つのメッセージを表します。イベントを取得する必要があるアプリケーションは、対応するメッセージを読み取り、処理します。

2. 別のリージョンから Message Service にアクセスするにはどうすればよいですか。

Message Service では、以下に示す多様なリージョンでアクセス可能なさまざまなエンドポイントが利用可能です。

リージョン パブリックネットワークアドレス プライベートネットワークアドレス
中国 (杭州) mns.cn-hangzhou.aliyuncs.com mns.cn-hangzhou-internal.aliyuncs.com
中国 (青島) mns.cn-qingdao.aliyuncs.com mns.cn-qingdao-internal.aliyuncs.com
中国 (北京) mns.cn-beijing.aliyuncs.com mns.cn-beijing-internal.aliyuncs.com
シンガポール mns.ap-southeast-1.aliyuncs.com mns.ap-southeast-1-internal.aliyuncs.com
米国 (シリコンバレー) mns.us-west-1.aliyuncs.com mns.us-west-1-internal.aliyuncs.com/
中国 (深セン) mns.cn-shenzhen.aliyuncs.com mns.cn-shenzhen-internal.aliyuncs.com
中国 (上海) mns.cn-shanghai.aliyuncs.com mns.cn-shanghai-internal.aliyuncs.com

3. Message Service はどのような操作が可能ですか。

現在、Message Service は次の操作に対応しています。

キュー関連の操作

•CreateQueue:新しいキューを作成します。
•SetQueueAttributes:キューの属性を変更します。
•GetQueueAttributes:既存のキューの属性を取得します。
•DeleteQueue:既存のキューを削除します。
•ListQueue:1 つのアカウントのキューのリストを表示します。

メッセージ関連操作

•SendMessage:送信者が指定したキューにメッセージを送信できるようにします。
•BatchSendMessage:送信者が指定したキューにバッチでメッセージを送信できるようにします。
•ReceiveMessage:受信者がキュー内のメッセージを取得できるようにします。
•BatchReceiveMessage:受信者がキュー内のメッセージをバッチで取得できるようにします。
•DeleteMessage:取得されたメッセージを削除します。
•BatchDeleteMessage:取得されたメッセージをバッチで削除します。
•PeekMessage:受信者がメッセージを表示できるようにします。
•BatchPeekMessage:受信者がメッセージをバッチで表示できるようにします。
•ChangeMessageVisibility:まだ [Inactive] ステータスであるメッセージが取得された日時を変更し、再び取得できるようにします。

4. 他のメッセージキューシステムと比較して Message Service にはどのような利点がありますか。

メッセージキューシステムを構築する場合や、商用目的またはオープンソースのメッセージおよび通知サービスでキューを管理する場合と比較して、Alibaba Cloud Message Service には次の利点があります。

•大きな投資を行う必要はありません。
•ハードウェアや管理リソースの数を増やす必要はありません。
•レプリケーションおよび冗長のあるメッセージストレージオプションを使用するため、ハードウェア障害が発生した場合もメッセージは保護されます。
•ライブデプロイでも、メッセージを作成後、コンソールで簡単に変更可能です。

5. Message Service の使用を開始するにはどうすればよいですか。

Alibaba Cloud アカウントを作成します。
• Message Service にオンラインでサブスクライブします。
• コンソールで、キューの作成・削除、メッセージの送受信などの基本的なメッセージング操作を開始できます。
• コンソールから Message Service を使用する方法に関する詳細な手順については、クイックスタートガイドをご参照ください。
• メッセージサービスのAPI and SDKを利用して、メッセージキューをアプリケーションに統合することもできます。

6. メッセージはシステムでどのように識別されますか。

キュー内のメッセージは一意の Message-ID を使用して識別されます。メッセージが Message Service キューに送信されると、Message-ID?が生成されます。一度生成された?Message-ID は変更できません。

7. ロングポーリングとは何ですか。

ロングポーリングは、キューからのメッセージの取得方法の 1 つです。ロングポーリングを使用すると、Message Service は応答を送信する前にメッセージがキューで取得可能になるまで待機できるため、空の応答の数を削減できます。

8. メッセージキューサービスはロングポーリングに対応していますか。

はい。Message Service はロングポーリングに対応しています。

メッセージが取得可能になると、ロングポーリングは直ちに Message Service キュー内のメッセージを単純で効率的な方法によって取得できます。

9. Message Service はメッセージを FIFO (First-In-First-Out) で処理しますか。

はい。多くの場合、メッセージは FIFO 方式で取得されます。ただし、分散メッセージキューの性質上、必ずしも送信された順番どおりにメッセージを取得できるとは限りません。

10. Message Service は Alibaba Cloud の他のサービスと連携できますか。

Message Service は、ECS (Elastic Compute Service)、OSS (Object Storage Service)、Object Table Service などの Alibaba Cloud の他のサービスとの連携により、アプリケーションの信頼性とスケーラビリティを向上させることができます。

11. Alibaba Cloud の他のプロダクトと連携した使用例は以下のとおりです。

•Message Service では、ECS インスタンスで実行されているアプリケーションにメッセージを送信することで、メッセージを処理できます。
•ECS インスタンスはキューを読み取ってタスクを処理し、その結果をメッセージとして別の Message Service キューに送信できます (他のアプリケーションが続けて処理する場合があります) 。
•ECS はアプリケーションの動的な拡張が可能です。これによって、開発者はメッセージの量に応じてコンピューティングインスタンスの柔軟性を組み込むことで、一貫性のあるパフォーマンスを維持できます。

12. Message Service では、保管されるデータの信頼性をどのようにして確保しますか。

Message Service では、すべてのキューとメッセージが、高い信頼性と可用性を備えたデータセンターのネットワークに保管されます。すべてのメッセージは複数のサーバーに冗長モードで保管されるため、サーバーエラーが発生した場合、メッセージを冗長なデータプールからフェッチできます。

13. 複数のコンシューマーが同じキューにアクセスした場合、 メッセージの損失や再取得をどのように防ぎますか。

各 Message Service キューには、設定可能な ChangeMessageVisibility 属性 (キューから取得されたメッセージが不可視になる期間) があります。メッセージがキューから取得されると、不可視期間の間、他のコンシューマーはこのメッセージを取得できません。

•不可視期間の間に取得した場合は、一時的なハンドル (ReceiptHandle) を使用してメッセージが削除されます。
不可視期間の間に取得しない場合は、(ChangeVisibilityTimeout) を使用して不可視期間を延長するリクエストを送信する必要があります。送信しないと、不可視期間が経過した後、他のコンシューマーがこのメッセージを取得します。

14. Message Service では各メッセージを何回受信されますか。

Message Service のシステムは、キュー内のすべてのメッセージが必ず最低 1 回取得されるように設計されています。ただし、念のためアプリケーションサービスのフォールトトレランスを強化することを推奨します。これにより、同じメッセージが何度も処理される場合にエラーや不整合の発生を防ぐことができます。

15. Message Service では、キュー内のメッセージのセキュリティをどのようにして確保しますか。

Message Service は、メッセージキューを認証されていないアクセスから保護するために、安全かつ信頼性の高い ID 認証メカニズムを用意しています。キューにアクセスできるのは、そのキューを作成したアカウントオーナーだけです。

16. Message Service のメッセージの保管期間を長くするにはどうすればよいですか。

メッセージの保管期間を設定するには、SetQueueAttributes を使用して MessageRetentionPeriod 属性を設定します。この属性では、 Message Service キュー内でのメッセージの保管期間を指定します。現在、デフォルトのメッセージの保管期間は 4 日間です。MessageRetentionPeriod を 1 分から 15 日までの任意の値に設定できます。

17. Message Service のメッセージはの保管期間はどのぐらいですか。

Message Service のデフォルトのメッセージ保管期間は 4 日間です。保管期間は設定可能で、1 分から 15 日までの任意の値に設定できます。メッセージの保管期間を過ぎるとメッセージは自動的に削除されます。

18. 容量の大きなメッセージに対応するよう設定するにはどうしたらよいですか。

メッセージの最大サイズを設定するには、SetQueueAttributes を使用して MaximumMessageSize 属性を設定します。この属性では、メッセージのバイトサイズを指定します。1-64 KB の任意の値に設定できます。メッセージの長さが 64 KB を超える場合は、データを OSS に格納し、データのアクセスアドレスのみを Message Service に格納することを推奨します。

19. 長期間メッセージが保管されないキューはどうなりますか。

通常、Message Service ではアクティブでないキューを削除しません。ただし、料金滞納またはその他の理由により Message Service が停止された場合はすべてのキューが削除されます。

20. 名前が同じでリージョンが異なるキューは、同一のものですか。

いいえ。名前が同じでリージョンが異なるキューは、互いに独立した存在です。

高品質なサポート

1 対 1 のプリセールスコンサルティング、24 時間体制のテクニカルサポート、迅速な応答、チケット増量

1 対 1 のプリセールスコンサルティング

経験豊富なクラウドエキスパートによるコンサルティング。 詳細を見る

24 時間体制のテクニカルサポート

週 5 日 10 時間から 24 時間 365 日にサービス時間を延長。 詳細を見る

各四半期に 6 枚の無料チケット

無料チケットの数を、四半期ごとに 3 枚から 6 枚に倍増。 詳細を見る

迅速な応答

販売後の応答時間を 36 時間から 18 時間に短縮。 詳細を見る