2017-02-27 12 views
0

AWS SQSがREST APIを呼び出す方法はありますか?基本的には、メッセージがAWS SQSにプッシュされるとすぐに、それを聞いて必要なアクションを実行します。毎秒メッセージをプルできるリスナーをスケジュールできますが、それは最適化ソリューションではなく、キューは空(ときには)かもしれません。AWS SQS:メッセージがプッシュされるたびにSQSが私のコンシューマーと呼ぶのですか

ありがとうございました!

答えて

2

思考のカップル:

利用出版社/サブスクライバー

あなたはSNSへのメッセージを公開し、SQSを経由して、それに加入するように、SNS/SQSと、パブリッシャ・サブスクライバモデルを使用してに見て。メッセージが公開されるとすぐに処理する必要がある場合は、SQSサブスクリプションに加えて別のコンシューマー(別のAPIを呼び出すlambda subscriberなど)を設定して処理することができます。

SQSロングポーリング

SQSについてあなたが長いポーリングの恩恵を受けるように、それが聞こえます。ドキュメントから:

ロングポーリングは、Amazon SQSに送信されたReceiveMessage要求に対する応答で リターンに利用できるメッセージがないとき に空の応答(の数を減らすことによってアマゾンSQSを使用してのあなたのコストを削減することができます キュー)と(メッセージがキューに 利用可能ですが、応答に含まれていない場合)はfalse、空の応答を排除:

  • ロングポーリングは、Amazon SQSがメッセージまで待つようにすることによって、空の応答の数を減らしますクールで利用可能です応答を送信する前に 応答してください。接続がタイムアウトしない限り、 ReceiveMessage要求への応答には、 ReceiveMessageアクションで指定されたメッセージの最大数まで、利用可能な メッセージの少なくとも1つが含まれます。
  • ロングポーリングは、(限られた数ではなく)サーバーのすべてを照会することによって、空の空の応答を排除します。
  • ロングポーリングは、メッセージが利用可能になるとすぐにメッセージを返します。
  • ドキュメントからも

、これらSQSのアクションのいずれかのために、以下を使用し、プログラムで長いポーリングを有効にする:

参考:あなたはSNSの代わりに、SQSを使用してはるかに良いだろうよう

1

が鳴ります。あなたが行うにはSQSを取得しようとしている何を、SNSを行うように設計されました:

あなたが一つ以上の HTTPまたはHTTPSエンドポイントに通知メッセージを送信するためにアマゾンSNSを使用することができます。エンドポイントをトピックにサブスクライブすると、 通知がトピックに公開され、Amazon SNSは HTTP POST要求を送信して、通知の内容を 購読済みエンドポイントに配信します。エンドポイントを購読するときは、 を選択して、Amazon SNSがHTTPまたはHTTPSを使用してPOST要求を エンドポイントに送信するかどうかを選択します。 HTTPSを使用する場合は、以下の...

http://docs.aws.amazon.com/sns/latest/dg/SendMessageToHttp.html

のためにアマゾンSNSでサポート を活用することができます
関連する問題