0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS EC2とLambda利用シナリオ「知識整理」

Posted at

AWS EC2とLambdaの比較について、どのシナリオでそれぞれを利用するかを以下に示します。

AWS EC2の利用シナリオ

■長時間のプロセス:
継続的に稼働するアプリケーションや長時間実行されるバッチ処理。

・具体例: オンラインゲームのサーバー、データ分析ジョブ、長時間実行されるバックグラウンド処理など。
・理由: EC2は常時稼働できるため、長期的なタスクに適しています。サーバーの起動やシャットダウンの時間を考慮する必要がありません。

■カスタム環境が必要な場合:
特定のOSやソフトウェアスタックが必要な場合。例: 特定のライブラリやフレームワークが必要な場合。

・具体例: 特定のデータベースサーバーやアプリケーションサーバー(例: Oracle DBや特定のアプリケーションフレームワーク)。
・理由: EC2インスタンスでは、好きなOSやソフトウェアを自由にインストール・設定できるため、特定の要件に応じた環境を構築できます。

■状態管理:
セッション情報やユーザーデータを保持する必要がある場合。EC2インスタンス上でのデータベースやキャッシュの管理。

・具体例: ユーザーセッションやリアルタイムデータ処理が必要なアプリケーション(例: ECサイトのカート機能)。
・理由: EC2はステートフルなアプリケーションに適しており、セッション情報をインスタンス内に保存できます。

■高いカスタマイズ性:
ハードウェアのリソースを自由に選びたい場合や、特定の設定を行いたい場合。
・具体例: 特定のネットワーク設定やセキュリティ要件(例: カスタムVPC、セキュリティグループ)。
・理由: EC2はインフラを細かく設定できるため、特定のビジネスニーズに合わせた構成が可能です。

AWS Lambdaの利用シナリオ

■短期間の処理:
短時間で完了するタスクやイベント駆動型の処理(例: HTTPリクエストの処理やデータの変換)。

・具体例: イメージの処理、データの変換、APIリクエストの処理。
・理由: Lambdaは短時間で完了するタスクに最適で、実行後すぐに自動でリソースが解放されます。

■スケーラビリティ:
自動的にスケールアップ・スケールダウンが必要な場合。特に突発的なトラフィックに対応したいとき。

・具体例: 突発的なトラフィックに対応するWebアプリケーションのバックエンド。
・理由: Lambdaはリクエストに応じて自動でスケールし、数千のリクエストを同時に処理できます。

■コスト効率:
利用した分だけ料金が発生するため、トラフィックが不定期な場合や低頻度での実行が求められる場合。

・具体例: 定期的に実行されるバッチ処理やトリガーに基づくタスク。
・理由: Lambdaは実行時間に応じた料金体系で、使用していない時間は料金が発生しません。

■サーバーレスアーキテクチャ:
サーバー管理の手間を省きたい場合。インフラの管理をAWSに任せたいとき。

・具体例: マイクロサービスアーキテクチャの一部として利用されるサービス。
・理由: Lambdaを利用することで、インフラ管理から解放され、コードに集中できるため、開発効率が向上します。

■イベントドリブンな処理:
S3のオブジェクトアップロード、SNS通知、DynamoDBの変更など、イベントに基づいて処理を実行する必要がある場合。

・具体例: S3バケットへのファイルアップロード時に自動で画像をリサイズする処理。
・理由: Lambdaは各種AWSサービスとの連携が容易で、イベントに基づいた処理を簡単に設定できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?