DOPSDLC の自動化

CodePipelineのソースステージでS3バケットの変更を検知する最も効率的な方法はどれですか?

A
CodePipelineがS3バケットを定期的にポーリングする(旧方式)
CodePipelineポーリング方式(旧方式)は一定間隔でS3をチェックするため、変更検知に最大ポーリング間隔分の遅延が生じ、ポーリングAPI呼び出しのコストも発生します。
B
S3バケットのEventBridgeイベントを使用してパイプラインを自動トリガーする
✓ 正解
EventBridgeによるS3イベントトリガーはS3オブジェクト変更を即座に検知でき、API呼び出しコストも低いです。AWSの新規パイプライン作成時のデフォルトもEventBridgeベースであり、ベストプラクティスとして推奨されています。
C
Lambda関数でS3の変更を監視してCodePipelineをAPIで起動する
Lambda関数でS3変更監視してCodePipelineをAPI起動する方式は技術的に動作しますが、CodePipelineが標準提供するEventBridgeトリガーを使用する方がシンプルで保守性が高く、カスタム実装は不要です。
D
CloudWatchルールで1分ごとにS3バケットをチェックする
CloudWatchルールによる定期S3チェックはポーリング方式の一種であり、イベントドリブンなEventBridge方式より検知遅延が大きく、API呼び出しコストも割高です。

解説

EventBridgeを使用してS3オブジェクト変更イベントでパイプラインを起動する方式(イベントベース)は、ポーリング方式に比べて変更検知の遅延が少なくAPIコストも低いです。AWSではS3をソースとするCodePipelineのベストプラクティスとしてEventBridge統合が推奨されており、現在の新規パイプライン作成時のデフォルトもEventBridgeベースです。 Aのポーリング方式(旧方式)は一定間隔でS3を確認するため変更検知に遅延が生じ、APIコールのコストも発生します。 CのLambda関数で監視する方式は技術的に動作しますが、CodePipelineが標準提供するEventBridgeトリガーを利用する方がシンプルで保守性が高く、カスタム実装は不要です。 DのCloudWatchルールによる定期チェックもポーリング方式の一種であり、イベントドリブンな方式より非効率です。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDOPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
DOP の問題一覧に戻る