メインコンテンツに移動

メッセージキューの機能

概要

それぞれ別個の機能を実行する個々のコンポーネントからアプリケーションを構築することは、スケーラビリティと信頼性が向上するベストプラクティスです。メッセージキューを使用すると、アプリケーションコンポーネント間で任意のボリュームでメッセージを送信、保存、受信できます。メッセージが失われることも、他のサービスが常に利用可能である必要もありません。

メッセージキューは、こちらで説明したように、メッセージがどのように配信され保護されるかを指定できるようにするいくつかのオプションを提供します。キューは、ファンアウト設計パターンで Pub/Sub メッセージングと組み合わせることもできます。

メッセージキューとは何ですか?

開始方法

アマゾン SQS をお試しください

Amazon Simple Queue Service (SQS) は、わずか 3 つのシンプルなコマンドで開始できます。

Amazon SQS を無料で試す

無料利用枠の詳細

AWS 無料利用枠には、Amazon Simple Queue Service (SQS) でのリクエスト 100 万件が含まれます。

AWS 無料利用枠の詳細 »

特徴

プッシュ配信またはプル配信

ほとんどのメッセージキューには、メッセージを取得するためのプッシュオプションとプルオプションの両方が用意されています。プルでは、キューに新規メッセージのクエリを実行し続けます。プッシュとは、メッセージが利用可能になったときにコンシューマーに通知されることを意味します(これは Pub/Sub メッセージングとも呼ばれます)。ロングポーリングを使用して、プルが完了する前に、新しいメッセージが到着するまで指定した時間待機できるようにすることもできます。

スケジュール配信または遅延配信

多くのメッセージキューは、メッセージの特定の配信時間の設定をサポートしています。すべてのメッセージに共通の遅延が必要な場合は、遅延キューを設定できます。

少なくとも 1 回の配信

メッセージキューは、冗長性と高可用性を確保するためにメッセージの複数のコピーを保存し、通信障害またはエラーが発生した場合にメッセージを再送信して、メッセージを少なくとも 1 回は配信するようにします。

1 回限りの配信

重複が許容されない場合、 FIFO (先入れ先出し) メッセージキューは、重複を自動的に除外することで、各メッセージが一度だけ (しかも一度だけ) 配信されるようにします。

FIFO (先入れ先出し) キュー

これらのキューの中でも、キューの「先頭」と呼ばれることもある、最も古いエントリ (つまり最初のエントリ) が、最初に処理されます。Amazon SQS FIFO キューの詳細については、開発者ガイドを参照してください。

また、「Python と Amazon SQS FIFO キューを使用してメッセージシーケンスを維持する方法」、「Amazon SQS FIFO API の仕組み」、「1 回限りの処理と重複排除を備えた FIFO キュー」というブログもご覧ください。

デッドレターキュー

デッドレターキューは、他のキューが、正常に処理できないメッセージの送信先とすることができるキューです。これにより、キューの処理をブロックしたり、正常に消費されない可能性のあるメッセージに CPU サイクル を無駄に費やしたりすることなく、詳細な検査のためにそれらのメッセージを取って置くことが容易になります。

デッドレターキューの詳細については、当社のブログ「Amazon SQS デッドレターキューを使用してメッセージ障害を制御する」を参照してください。Amazon SQS でデッドレターキューを使用する方法については、開発者ガイドをご覧ください。

注文

ほとんどのメッセージキューはベストエフォート型の順序になっています。これにより、メッセージは一般的に送信された順序と同じ順序で配信され、メッセージは少なくとも 1 回は配信されます。

ポイズンピルメッセージ

ポイズンピルは、受信はされても処理されない特別なメッセージです。これらは、コンシューマーに作業を終了するよう通知するために使用されるメカニズムです。新しい入力を待つこともなくなるため、クライアント/サーバーモデルでソケットをクローズすることに似ています。

セキュリティ

メッセージキューは、キューにアクセスしようとするアプリケーションを認証し、暗号化を使用してキュー自体だけでなく、ネットワーク上のメッセージを暗号化することもできます。AWS のキューセキュリティの詳細については、当社のブログ「Amazon Simple Queue Service (SQS) のサーバー側の暗号化」を参照してください。Amazon SQS のセキュリティ機能の詳細については、開発者ガイドをご覧ください

Amazon Simple Queue Service (SQS)

3 つのシンプルなコマンドを実行するだけで、使用を無料で開始できます。
無料で開始する

今日お探しの情報は見つかりましたか?

ぜひご意見をお寄せください。ページのコンテンツ品質の向上のために役立てさせていただきます