無限ノック › DOP 練習問題一覧 › 問題
DOPSDLC の自動化

ある開発チームはReactで構築されたフロントエンドのシングルページアプリケーション(SPA)を運用しています。マーケティングチームから、「特定のユーザーセグメントに対してのみ、新しいUIコンポーネントを有効化してA/Bテストを実施したい。 ただし、アプリケーションのコードを再デプロイすることなく、リアルタイムに機能のオン/オフを切り替えられるようにしてほしい」という要望がありました。この要件を満たすための最適なAWSサービスはどれですか。

A
AWS AppConfigを使用してフィーチャートグル(機能フラグ)を作成し、アプリケーションから定期的に設定を取得してUIコンポーネントの表示を制御する
✓ 正解
AWS AppConfigは機能フラグの管理に特化しており、アプリケーションの再デプロイなしに設定を動的に変更できるため、マーケティングチームのリアルタイムなUI制御とA/Bテストの要件に最も適合するベストプラクティスです。
B
Amazon API Gatewayのカナリアリリース機能を利用して、特定のユーザーセグメントからのリクエストを新しいUIを返すLambdaにルーティングする
API GatewayのカナリアリリースはバックエンドAPIのトラフィックの割合に基づいた分散には適していますが、SPAなどのフロントエンドアプリケーションのUIコンポーネントの出し分けや、特定のユーザーセグメントに基づいた動的な機能フラグの制御には適していません。
C
AWS CodeDeployのブルー/グリーンデプロイメントを利用し、トラフィックシフト設定で新しいUIを含むバージョンに一部のトラフィックを流す
CodeDeployのブルー/グリーンデプロイはインフラ全体のバージョン切り替えを行う手法であり、「アプリケーションのコードを再デプロイすることなく」という重要な前提条件に真っ向から反するため、この要件を満たすソリューションではありません。
D
AWS Systems Manager Parameter Storeに機能のオン/オフ状態を保存し、CodePipelineでコード変更を検知して自動的に再デプロイを実行する
Parameter Store自体は設定値の保存に利用できますが、CodePipelineをトリガーして再デプロイを実行する設計になっているため、「再デプロイなしでリアルタイムに切り替える」という要件を満たせず、CI/CDパイプラインの非効率な使用となります。

解説

アプリケーションの再デプロイを伴わずに動的に機能の有効化・無効化を制御する最適なアプローチは、「フィーチャートグル(機能フラグ)」の導入です。 AWS AppConfigはアプリケーションの設定データを安全にデプロイ・管理するサービスであり、フィーチャートグルをネイティブにサポートしています。Reactフロントエンドは実行時にAppConfigから設定をポーリングし、フラグの値に基づいてUIコンポーネントの表示をリアルタイムに制御します。コードのデプロイと機能リリースを分離することで、ダウンタイムなしに安全なA/Bテストや段階的ロールアウトを実現できます。 API GatewayのカナリアリリースはバックエンドAPIへのトラフィック分割機能であり、フロントエンドのUIコンポーネントをコード変更なしに切り替える要件には対応できません。 CodeDeployのブルー/グリーンデプロイメントはトラフィックシフトを行う機能ですが、新バージョンのデプロイを伴う操作であり「再デプロイなし」という要件に反します。 Parameter StoreにON/OFF状態を保存してCodePipelineで再デプロイを実行する構成は、「コードの再デプロイなし」という要件に直接違反しており、要件を満たしません。

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

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

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