#
ドキュメント

Document

自分のための備忘録です。

SQS(Amazon Simple Queue Service)

SQS では、2 種類のメッセージキューを利用できます。標準キューでは、最大限のスループットが得られ、配信順序はベストエフォート型で、配信は少なくとも 1 回行われます。SQS FIFO キューは、メッセージが送信される順序のとおりに 1 回のみ確実に処理されるように設計されています。

https://aws.amazon.com/jp/sqs/

用語

  • プロデューサー:SQSにエンキューする側
  • コンシューマー:SQSからデキューして処理する側

概要

ユースケース

  1. SQSはオブジェクト(なんらかのテキスト)をエンキューする。
  2. デキュー
  3. なんらかの処理が行われる(オブジェクトに処理が記載)

  • SQSを作成するとURLが発行される

サンプル

https://docs.aws.amazon.com/ja_jp/sdk-for-javascript/v2/developer-guide/sqs-examples-send-receive-messages.html

わかりやすい説明

https://github.com/quartetcom/Talaria/issues/749#issuecomment-930869471

ユースケース

SQS確認サンプル

用語

  • エンキューするプログラムをプロデューサーと呼ぶ
  • デキューするプログラムをコンシューマーと呼ぶ

概要

  • Webマネジメントコンソールから手動で作成したキューに対してエンキューおよびデキューする
  • Node.jsで作成されている
  • ローカルから実行することを想定している

準備

環境構築

AWS CLIのクレデンシャルは設定済みとする

aws-sdkをインストール

aws-sdkをインストール

$ npm install aws-sdk

プログラム

キューのURLを設定するだけで実際に動作する。

Amazon SQS でのメッセージの送受信

エンキュー&デキュー

エンキュー

$ cd /path/to/sqs
$ node producer.js

デキュー

$ cd /path/to/sqs
$ node consumer.js

エンキュー後にデキューできるようになるまで時間がかかることがある。

SQSログ・モニタリング

Amazon_SQS