処理が複雑でジョブの依存関係を定義したい場合は、AWS Batch 単体で制御するか、より複雑な場合は Step Functions を用いて Lambda、ECS(Fargate)、AWS Batch(Fargate) を組み合わせる。 AWSにおけるバッチ処理の選択肢 ざっくりとした選択肢は下記。 Lambda ECS(Fargate) AWS Batch(Fargate) これらのサービスに実際は SQS や Step Functions を組み合わせることもあるので選択肢はさらに広がる。 ちなみに、SQS + Fargate(常時起動でポーリング) という構成や、SQS + Lambda + Fargate(都度実行) という構成は、AWS Batch が Fargate に対応した現在は特にメリットがないので取り扱わない。 2021/5/2 追記 「常時リクエストがくるユースケー
CTOの椎名です。最近弊社では家族アプリFammの印刷・配送・通知など様々な処理を使うために AWS Lambda と AWS Batch を使う量が増えてきて、ECS Fargate も徐々に導入をはじめてきました。 Lambda も Batch も ECS Task も、何かのジョブを単発/定期でサーバー無しで実行するための手段として似ているところがあります。何かのバッチ/ジョブを作る時に「これはLambdaで作るべきか?Batchで作るべきか?」などで迷う事もあります。もちろん製品名の通り「バッチならAWS Batch」と言う考え方もありますが、AWS Batchではオーバーキルな時もあれば、かゆいところに手が届かない時もあります。 今回はこれらの特徴やメリット/デメリットの比較をまとめます。 AWS Lambda 簡単に言うと「コードだけアップロードして実行トリガーを決めればその通
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く