BT

Amazonは、AWS LambdaがイベントソースとしてSimple Queue Service(SQS)をサポートすることを発表

| 作者: Steef-Jan Wiggers フォローする 8 人のフォロワー , 翻訳者 編集部T _ フォローする 0 人のフォロワー 投稿日 2018年7月31日. 推定読書時間: 3 分 |

原文(投稿日:2018/07/14)へのリンク

AmazonはSimple Queue Service (SQS)のアップデートを発表した。開発者はSQSメッセージを使用してAWS Lambda Functionsを起動できる。さらに、開発者がメッセージポーリングサービスを実行したり、SQSからSNSへのマッピングを作成するためにを必要がなくなった。

Amazon SQSはメッセージキューイングサービスであり、AWSでは10年以上提供されているサービスである。これはAmazonによるフルマネージドであり、サービス間のデカップリングができる。これは、ネットワーク経由でアクセス可能で、自動スケールし、使った分だけ支払う方式で提供されている。SQSには2種類のキューが用意されている。

  • スタンダードキュー。これは、最大スループット、ベストエフォート型のオーダーで、少なくとも1回のデリバリーを提供する。
  • SQS FIFOキュー。これは、メッセージが送信された順序で厳密に1回だけ処理されることを保証するように設計されている。

AWS Lambdaは、サーバのプロビジョニングや管理を行わずに開発者がコードを実行できるようにするコンピューティングサービスである。このサービスは、Amazonが機能を追加し、SQSをサポートすることで、ここ4年間で進化してきた。つまり、開発者はキューイングサービスをLambda向けのダイレクトイベントソースとして使用して機能をトリガーできるようになった。現在、Lambdaトリガはスタンダードキューでのみ動作する。

Lambda関数でSQSトリガを使うための典型的な設定は、それを関数に追加し、その関数に、SQSスタンダードキューと通信するための適切な権限を持つ実行ロールを設定することである。次に、関数をトリガするキューの名前と、関数が一度に受け取るメッセージの数を指定する。


ソース: https://aws.amazon.com/blogs/aws/aws-lambda-adds-amazon-simple-queue-service-to-supported-event-sources/


バッチサイズを1に設定すると、最大10回のLambda実行が同時にトリガーされる。ただし、バッチサイズを高く設定すると、Lambdaの実行は1回だけトリガされ、いくつかのメッセージ(サイズに基づいて)が送信される。TechTargetの記事によれば、ACI Information Groupの技術担当副社長であるChris Moyes氏は次のように述べている。

さらに、開発者は、LambdaのReserved Concurrency設定に関連する、このバッチサイズを使用して、一度に処理できるメッセージの数を設定できます。これは、FTPサーバへのコンテンツ配信など、他のシステムへ拡散するのを制限したり、防ぐのに役立ちます。

AWS Lambdaは、メッセージを消費する関数が初期化されると、SQSスタンダードキューからメッセージを削除する。しかし、関数が失敗またはタイムアウトすると、メッセージは、キューに設定されている可視性タイムアウト値で指定されたとおりにキューに再び表示される。開発者は、デフォルトのキューの可視性タイムアウト、再試行、再試行の間隔を設定できる。

AWS Lambdaは、メッセージを消費するときに水平方向に自動的にスケールすることができる。ブログ記事で次のように発表されている。

Lambdaの自動スケーリング動作は、キューが空である場合にポーリングコストを低く抑えると同時に、キューが頻繁に使用されている場合に高いスループットにスケールアップできるように設計されています。

SQSに登録されているLambdaトリガは、SQSコンソールで管理できる。ユーザはここでトリガーを設定および編集することもできる。この新機能は、Lambdaが利用できるすべてのリージョンで利用できるようになった。ドキュメントは最新であり、LambdaサービスがSQSキューをロングポーリングすることを除いて追加料金が発生する。Amazonは標準のSQS料金設定でこれらのAPIコール用のアカウントに対して課金する。

 
 

Rate this Article

Adoption Stage
Style
 
 

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション
BT