このチュートリアルでは、Amazon Simple Queue Service (Amazon SQS) を使用して非同期メッセージングをセットアップする方法について学習していきます。Amazon SQS は、アプリケーションコンポーネントのクラウド内での通信を可能にする AWS のサービスです。Amazon SQS コンソールを使用して、メッセージキューの作成と設定、メッセージの送信、メッセージの受信、受信したメッセージの削除、キューの削除を行います。

このチュートリアルで使用する AWS のサービスは AWS 無料利用枠の適用内です。

AWS でメッセージを送信するにはアカウントが必要です

まずは無料で始める

AWS 無料利用枠には、Amazon Simple Queue Service での 1,000,000 件のリクエストが含まれます。

AWS 無料利用枠の詳細はこちら »

 


a.ここをクリックすると、AWS マネジメントコンソールが新しいブラウザウィンドウで開くため、このステップバイステップガイドを開いたままで操作できます。  画面が読み込まれたら、ユーザー名とパスワードを入力して作業を開始します。次に、検索バーに「queue」と入力し、[Simple Queue Service] を選択してコンソールを開きます。

(クリックして拡大)


b.  スクリーンショットのように SQS コンソールのランディングページが表示されたら、[今すぐ始める] をクリックします。このページが表示されない場合は、次のステップに進んでください。

(クリックして拡大)

このステップでは、Amazon SQS キューの作成と設定を行います。キューは、分散アプリケーション間またはマイクロサービス間を移動するメッセージを保存する、信頼性とスケーラビリティの高いバッファです。キューは、アプリケーションのデカップリング、マイクロサービスの接続、タスクのバッチ処理、通知の保存を行う際に使用します。

このチュートリアルのユースケースでは、e コマースアプリケーションから届いた注文の保存をシミュレーションします。


a.まず、店舗に届いた注文を保存するシンプルなキューを作成します。[キュー] フィールドに [Orders] と入力します。 

(クリックして拡大)


b.このチュートリアルでは、厳密な順序付けは必要ないため、キュータイプは変更しません。[標準キュー] を選択したままにします。 

(クリックして拡大)


c.キューを設定する際、保持期間、最大メッセージサイズ、配信遅延などの設定を変更できます。このチュートリアルでは、デフォルトのパラメータを使用します。[キューをクイック作成] を選択します。

(クリックして拡大)


d.新しいキューが作成され、キューリストで選択されます。

(クリックして拡大)

キューの作成が完了すると、新しい注文それぞれの詳細をキャプチャしたメッセージをオンラインストアから受信できるようになります。


a.  リスト内でキューがすでに選択されています。[キュー操作] から [メッセージを送信] を選択します。[Orders にメッセージを送信] ダイアログボックスが表示されます。

(クリックして拡大)


b.[Orders にメッセージを送信] ダイアログボックスが表示されます。[メッセージ本文] タブで、サンプル注文について説明する以下のテキストを入力します。

1 x Widget @ $29.99 USD
2 x Widget Cables @ $4.99

(クリックして拡大)


c.処理を容易にするために、[メッセージ属性] タブを選択して、このメッセージに関するオプションのメタデータをいくつか追加します。この注文に注文タイプを追加してみましょう。[名前] フィールドに「Order-Type」、[タイプ] フィールドに「String」、[] フィールドに「Online」とそれぞれ入力します。[属性を追加] をクリックします。

(クリックして拡大)


d.[メッセージを送信] をクリックして、メッセージをすぐに送信します。メッセージが送信されたことが、[Orders にメッセージを送信] ダイアログボックスに表示されます。[閉じる] をクリックします。

(クリックして拡大)

キューにメッセージを送信すると、それを別のアプリケーションで使用し、何らかの作業を行えるようになります。この例では、メッセージを取得して注文を表示した後、それを削除します。


a.[Orders] キューが、キューリスト内で選択されていることを確認します。次に、[キュー操作] から [メッセージを表示/削除] を選択します。

(クリックして拡大)


b.[Orders のメッセージを表示/削除 ] ダイアログボックスが表示されます。キュー内のメッセージをリクエストするときは、特定のメッセージを指定しません。代わりに、取得したいメッセージの最大数 (最大 10) を指定します。

[メッセージのポーリングを開始] をクリックして、キューからメッセージを取得します。 

(クリックして拡大)


c.コンシューマーがメッセージを取得して処理すると、そのメッセージをキューから削除することができます。削除したいメッセージを選択し、[1 件のメッセージを削除] を選択します。

(クリックして拡大)


d.[メッセージを削除] ダイアログボックスが表示されます。メッセージの横のボックスにチェックを入れ、[チェックが付いたメッセージを削除] をクリックします。選択したメッセージが削除されます。[閉じる] を選択します。

(クリックして拡大)

ベストプラクティスとして、不要になった Amazon SQS キューは削除することをお勧めします。


a.キューリストで [Orders] キューを選択します。次に、[キュー操作] から、[キューを削除] を選択します。

(クリックして拡大)


b.[キューを削除] ダイアログボックスが表示されます。キュー内にメッセージが残っていてもそのキューは削除できます。[はい、キューを削除] を選択します。キューが削除されます。

(クリックして拡大)

初めての Amazon Simple Queue Service (Amazon SQS) メッセージキューを作成し、キューにメッセージを送信し、メッセージを取得および削除して、キューを削除しました。これで、Amazon SQS キューを使って、分散アプリケーションのコンポーネント間やマイクロサービス間でデータを保存および移動することができるようになりました。

Amazon Simple Queue Service を使ってメッセージを送受信する方法について学習しました。次のいずれかのオプションを選び、メッセージングスキルにさらに磨きをかけましょう。

詳細を確認する

アマゾン ウェブ サービス (AWS) でのメッセージキューの機能、コンポーネント、ユースケースに関する概要を確認しましょう。

Amazon SQS ウェブページにアクセスする »

掘り下げる

Amazon Simple Queue Service におけるさまざまなキューのタイプ、主な機能、アーキテクチャをご紹介します。

ドキュメントを読む »

実際の事例を見る

Capital One といったお客様が、Amazon SQS と Amazon SNS をどのように使用してアプリケーションをデカップリングおよびスケールしているかをご覧ください。

ウェビナーを見る »