web-dev-qa-db-ja.com

AWS Lambdaはバッチジョブを実行する適切な方法ですか?

AWSで実行する必要があるバッチジョブがあります。何に使うのが一番いいのかしら。ジョブは1日に1回実行する必要があるため、AWS Lambdaは当然、それをトリガーするCloudWatchルールを実行すると思います。しかし、AWS Lambdaはリクエストを処理するサービスとして使用されていると考えられ始めています。 このAWS公式ライブラリ Spring-Bootを統合することは、HTTPリクエストを処理することを非常に重視しており、AWSコンソールを介してラムダを作成する場合、ラムダに入力を送信するテストケースのみを書き込むことができます。

次に、これはAWS Lambdaのユースケースですか?また、これらの機能は最大15分実行できます。ジョブをさらに長く実行する必要がある場合、何を使用すればよいですか?

3
antonro

Lambdaの目的は、AWS EC2と比較して、イベントや新しい情報に応答する、より小さなオンデマンドアプリケーションの構築を簡素化することです。

バッチが15分以内に実行されている場合は、ラムダ関数を使用できます。

ただし、バッチ処理を実行する場合は、AWS Batchを確認する必要があります。 AWSバッチ

ここ は、awsバッチの使用法のデモに関する素晴らしい記事です。


spring-batchなどのバッチフレームワークをすでに使用している場合は、ECSfargateスケジュールタスクを確認することもできます。

ECS fargateを使用すると、特定の時間にのみ実行する必要があるコンテナサービスを起動および停止できます。 fargateイベントとスケジュールされたタスク および スケジュールされたタスク の関連記事

7
Sangam Belose

関数が最大15分でのみ実行されると確信している場合、AWS Lambdaがソリューションになる可能性があります。以下は AWS Lambdaの制限 であり、これを判断するのに役立ちます。

また、ラムダにはコールドスタートがあることにも注意してください。これは、最初は低速で実行されますが、最終的にはペースを上げます。ラムダの方向を決定するのに役立つ可能性のある良い読み物をいくつか紹介しますが、自由に説明できる記事を自由にチェックしてください。

  • これ は、考慮したい簡単なリストとそれに影響を与える要因を示しています。
  • これ は、それが内部でどのように機能するかに関して、コールドスタートのより深い説明を持っているかもしれません。

ジョブをさらに長く実行する必要がある場合、何を使用すればよいですか?

インフラストラクチャによっては、探索することもできます スケジュールされたタスク

0
groobie newbie