AWS Certified Developer – Associate / Question #1088 of 557

Question #1088

A company operates a microservices application on Amazon EC2 instances that requires dynamic configuration parameters shared across services. The application must poll for parameter updates every 10 minutes and cache retrieved values to reduce latency. Which solution meets these requirements MOST operationally efficiently?

A

Store the parameters in AWS Secrets Manager. Use Amazon ElastiCache with a lazy loading strategy to cache values. Update the application to poll ElastiCache directly every 10 minutes.

B

Store the parameters in an Amazon DynamoDB table. Use DynamoDB Accelerator (DAX) with a lazy loading strategy for caching. Modify the application to poll DynamoDB every 10 minutes.

C

Store the parameters in AWS AppConfig. Deploy the AWS AppConfig Agent on the EC2 instances to poll for updates every 10 minutes. Configure the application to retrieve parameters from the agent's localhost endpoint.

D

Store the parameters in AWS Systems Manager Parameter Store. Update the application to poll Parameter Store every 10 minutes using the AWS SDK and cache values in memory.

Explanation

The correct answer is C because AWS AppConfig is purpose-built for managing application configurations. The AppConfig Agent deployed on EC2 instances handles polling AWS AppConfig every 10 minutes and caches the parameters locally. The application retrieves parameters from the agent's localhost endpoint, ensuring low latency and minimal API calls. This approach offloads polling and caching logic to the agent, making it operationally efficient.

Why other options are incorrect:
- A: Secrets Manager is for secrets, not general configurations. Using ElastiCache adds complexity, and lazy loading does not align with scheduled polling.
- B: DynamoDB and DAX are overkill for configuration data. DAX's lazy loading may not ensure timely updates without additional logic.
- D: While Parameter Store is suitable, polling via SDK requires the application to manage caching, increasing code complexity and API calls.

Key Points:
- Use AWS AppConfig for dynamic configurations.
- The AppConfig Agent automates polling and caching.
- Retrieving from localhost minimizes latency and operational effort.

Answer

The correct answer is: C