You need to design a solution for a microservices architecture that requires inter-service communication with service discovery, load balancing, and traffic management. What Azure service is optimal?
- Azure Container Apps with environment variables for service discovery
- Azure Service Bus with message queues
- Azure Kubernetes Service (AKS) with a service mesh like Istio ✓
- Azure App Service with custom routing rules
Correct answer: Azure Kubernetes Service (AKS) with a service mesh like Istio
Option C is correct because Azure Kubernetes Service with a service mesh such as Istio provides a fully integrated solution for microservices inter-communication, including automatic service discovery via Kubernetes DNS and service registry, built-in load balancing, mutual TLS, traffic splitting, retries, circuit breaking, and observability, making it the optimal choice for complex microservices architectures. Option A is incorrect because Azure Container Apps supports environment-based service discovery but lacks the fine-grained traffic management, advanced routing policies, and service mesh capabilities available with AKS and Istio. Option B is incorrect because Azure Service Bus is an asynchronous message broker suited for decoupled event-driven communication, not for synchronous service discovery or real-time load balancing between microservices. Option D is incorrect because Azure App Service with custom routing rules is designed for web application hosting and does not natively support container orchestration, Kubernetes-style service discovery, or service mesh traffic policies.
Topic: · aks, service mesh, istio, microservices