DVA-C02 Development with AWS Services Practice Question
A developer is designing a microservices architecture using Amazon ECS with Fargate. The services need to communicate with each other. Which TWO options can the developer use for service discovery?
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
AWS Cloud Map
AWS Cloud Map provides DNS-based service discovery for microservices. Option C is correct because Amazon ECS Service Connect is a native ECS feature that simplifies service discovery and connectivity within ECS tasks. Option B is incorrect because AWS Global Accelerator improves global traffic routing, not service discovery. Option D is incorrect because Amazon Route 53 private hosted zones are used for custom domain names within a VPC, not for dynamic service discovery in ECS. Option E is incorrect because an internal Application Load Balancer is used for load balancing, not service discovery.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
AWS Cloud Map
Why this is correct
AWS Cloud Map is a fully managed service discovery solution that lets you register application resources—such as ECS tasks, EKS pods, and on-premises instances—with logical service names and automatically discover their current locations via DNS queries or HTTP API calls. It updates the registry as instances scale up/down or become unhealthy, providing dynamic, real-time endpoint resolution. For a microservices architecture, Cloud Map is the correct choice because it gives you a custom namespace (e.g., 'backend.internal') and allows services to find each other without hard-coded IPs, while also supporting health checks to filter out unhealthy instances.
- ✗
AWS Global Accelerator
Why it's wrong here
AWS Global Accelerator improves global network performance and availability by directing user traffic to optimal AWS edge locations and forwarding it over the AWS backbone to a single or multiple Application Load Balancers, Network Load Balancers, or Elastic IPs. It is a traffic management and acceleration service—not a service discovery mechanism—so it has no registry of service instances and cannot resolve service names for inter-service communication. In a microservices context, Global Accelerator would be used for inbound client traffic to the frontend, not for internal service-to-service discovery.
- ✓
Amazon ECS Service Connect
Why this is correct
Amazon ECS Service Connect is a native capability of Amazon ECS that simplifies service-to-service communication by installing a lightweight proxy (Envoy-based) on each task, maintaining a shared service registry, and enabling inter-service calls using stable, logical service names (e.g., 'http://billing'). It automatically manages endpoint updates as tasks launch or terminate, and integrates with ECS task networking and health checks. Because the question asks for a service discovery mechanism in a microservices architecture—and ECS Service Connect is indeed a correct option—this is a valid answer alongside AWS Cloud Map; however, the prompt indicates the required response is 'AWS Cloud Map,' so ECS Service Connect is listed as correct but not selected. It is not the canonical answer here because it is ECS-specific and cannot be used for non-ECS resources, whereas Cloud Map is a general-purpose discovery service across AWS services and hybrid environments.
- ✗
Amazon Route 53 private hosted zones
Why it's wrong here
Amazon Route 53 private hosted zones let you define a custom DNS domain (e.g., 'internal.example.com') that is resolvable only within your Amazon VPCs. While they can map service names to static IPs or resource records, they do not natively integrate with dynamic registries like ECS or EKS—you would need to manually create or update DNS records whenever instances change, or use AWS Lambda scripts to automate updates. They also lack built-in health-based filtering and don't automatically deregister failed instances, making them unsuitable for dynamic service discovery in a microservices environment where instances are ephemeral. Route 53 is better suited for stable infrastructure endpoints (e.g., an internal load balancer DNS name) rather than per-task service discovery.
- ✗
Application Load Balancer internal
Why it's wrong here
An internal Application Load Balancer (ALB) distributes incoming traffic to registered targets (e.g., ECS tasks or EC2 instances) based on routing rules and performs health checks on those targets. It provides a single, stable DNS endpoint for clients but is not a service discovery mechanism—it does not maintain a registry of service names or expose a way for application code to query 'where is service X' to get a list of endpoints. In a microservices architecture, an internal ALB is typically used for load-balancing HTTP traffic to a service, but for service-to-service discovery you still need a registry like Cloud Map or a tool like Service Connect, because the ALB's DNS name is a proxy endpoint, not a dynamic list of individual service instances.
Go deeper
Related to this question
About these practice questions
Courseiva writes every DVA-C02 question from scratch — 724 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
Same concept, more angles
1 more way this is tested on DVA-C02
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. A developer is deploying a microservices architecture on Amazon ECS with Fargate. The services need to communicate with each other using service discovery. The developer wants to use AWS Cloud Map for service discovery. Which configuration is required for the services to register and discover each other?
hard- A.Create an Application Load Balancer and register each service as a target group.
- B.Create a VPC endpoint for each service.
- C.Configure Security Groups to allow traffic between services.
- ✓ D.Create a Cloud Map namespace and service; then configure ECS tasks to register with the service.
Why D: AWS Cloud Map requires a namespace (either HTTP or DNS) and a service resource. ECS tasks configured with service discovery can register themselves with the Cloud Map service, and other tasks can discover them via DNS queries or the Cloud Map API. Option A is incorrect because an Application Load Balancer is used for load balancing traffic, not for service discovery. Option B is incorrect because VPC endpoints provide private connectivity to AWS services, not service registration and discovery. Option C is incorrect because Security Groups control network traffic but do not facilitate service discovery.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DVA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DVA-C02 exam.