アマゾンウェブサービス-ラムダ
AWS Lambdaは、アプリケーション内のアクションを検査し、ユーザー定義コードをデプロイすることで応答するレスポンシブクラウドサービスです。 functions。複数のアベイラビリティーゾーンにまたがるコンピューティングリソースを自動的に管理し、新しいアクションがトリガーされたときにそれらをスケーリングします。
AWS Lambdaは、Java、Python、Node.jsで記述されたコードをサポートし、サービスはAmazon Linuxでサポートされている言語(Bash、Go、Rubyを含む)でプロセスを起動できます。
以下は、AWSLambdaを使用する際の推奨されるヒントです。
Lambda関数コードをステートレススタイルで記述します。
ハンドラーのスコープ外で関数変数を宣言しないでください。
+ rxのセットがあることを確認してください permissions アップロードされたZIP内のファイルで、Lambdaがユーザーに代わってコードを実行できるようにします。
不要になった古いLambda関数を削除します。
AWS Lambdaを設定する方法は?
以下の手順に従って、AWSLambdaを初めて設定します。
Step 1 −AWSアカウントにサインインします。
Step 2 −AWSサービスセクションからLambdaを選択します。
Step 3 −ブループリント(オプション)を選択し、[スキップ]ボタンをクリックします。
Step 4 −作成に必要な詳細を提供します Lambda function次のスクリーンショットに示すように、DynamoDBに新しいアイテムが追加されるたびに自動的にトリガーされるNode.jsコードを貼り付けます。必要なすべての権限を選択します。
Step 5 − [次へ]ボタンをクリックして、詳細を確認します。
Step 6 − [関数の作成]ボタンをクリックします。
これで、Lambdaサービスを選択して[Event Sources]タブを選択すると、レコードはありません。Lambda関数に少なくとも1つのソースを追加して機能させます。ここでは、DynamoDBテーブルを追加しています。
DynamoDBを使用してテーブルを作成しました(これについては、DynamoDBの章で詳しく説明します)。
Step 7 − [ストリーム]タブを選択し、Lambda関数に関連付けます。
このエントリは、LambdaServiceページの[EventSources]タブに表示されます。
Step 8−テーブルにいくつかのエントリを追加します。エントリが追加されて保存されると、Lambdaサービスが関数をトリガーする必要があります。Lambdaログを使用して確認できます。
Step 9−ログを表示するには、Lambdaサービスを選択し、「モニタリング」タブをクリックします。次に、CloudWatchで[ログの表示]をクリックします。
AWSLambdaのメリット
以下は、Lambdaタスクを使用する利点の一部です-
ラムダタスクは、AmazonSWFアクティビティタイプのように登録する必要はありません。
ワークフローですでに定義した既存のLambda関数を使用できます。
Lambda関数はAmazonSWFによって直接呼び出されます。それらを実装して実行するためのプログラムを設計する必要はありません。
Lambdaは、関数の実行を追跡するためのメトリックとログを提供します。
AWSLambdaの制限
以下は、ラムダ制限の3つのタイプです。
スロットル制限
スロットル制限は、アカウントごとに100回のLambda関数の同時実行であり、同じリージョン内のすべての関数にわたる同時実行の合計に適用されます。
関数の同時実行数を計算する式=(関数実行の平均期間)X(AWS Lambdaによって処理されたリクエストまたはイベントの数)。
スロットル制限に達すると、エラーコード429のスロットルエラーが返されます。15〜30分後に、作業を再開できます。スロットル制限は、AWSサポートセンターに連絡することで増やすことができます。
リソース制限
次の表は、Lambda関数のリソース制限のリストを示しています。
資源 | デフォルトの制限 |
---|---|
エフェメラルディスク容量( "/ tmp"スペース) | 512 MB |
ファイル記述子の数 | 1,024 |
プロセスとスレッドの数(合計) | 1,024 |
リクエストごとの最大実行時間 | 300秒 |
リクエスト本文のペイロードサイズを呼び出す | 6 MB |
応答本体のペイロードサイズを呼び出す | 6 MB |
サービス制限
次の表は、Lambda関数をデプロイするためのサービス制限のリストを示しています。
項目 | デフォルトの制限 |
---|---|
Lambda関数のデプロイパッケージサイズ(.zip / .jarファイル) | 50 MB |
デプロイメントパッケージに圧縮できるコード/依存関係のサイズ(圧縮されていないzip / jarサイズ) | 250 MB |
リージョンごとにアップロードできるすべてのデプロイメントパッケージの合計サイズ | 1.5 GB |
アカウントごとのスケジュールされたイベントソースタイプの一意のイベントソースの数 | 50 |
各スケジュールされたイベントに接続できる一意のLambda関数の数 | 5 |
最新の更新された制限構造と詳細については、-をご覧ください。 https://docs.aws.amazon.com/lambda/latest/dg/limits.html/