Service Discovery

Definition

Service Discovery automates the process for cloud application services to locate and connect with each other, eliminating the need for hardcoded addresses.

Use Cases

Provider Equivalents

Frequently Asked Questions

What's the difference between Service Discovery and load balancing?
Service Discovery answers: "Where is the service right now?" It provides a name-to-endpoint mapping (often updated automatically). Load balancing answers: "Which instance should I send this request to?" It distributes traffic across multiple healthy instances. In practice, you often use both: discovery gives you a set of endpoints (or a stable DNS name), and a load balancer or client-side logic spreads traffic across them.
When should I use Service Discovery?
Use it when service IPs/hosts change frequently (containers, autoscaling groups, serverless backends), when you have many microservices that need to talk to each other, or when you want to avoid manual configuration updates. If you have a small, static environment with fixed endpoints, simple DNS records or static configuration may be enough.
How much does Service Discovery cost?
Cost depends on the approach. Managed registries (for example, AWS Cloud Map) typically charge for items like the number of registered instances/endpoints and DNS queries/health checks. DNS-based discovery (private DNS zones) usually charges for hosted zones and DNS queries. The main cost drivers are request volume (DNS/lookup traffic), number of services/endpoints registered, and whether you use health checks.

Category: networking

Difficulty: advanced

Related Terms

See Also