Professional Cloud ArchitectAnalyze and optimize technical and business processesHard

A global e-commerce company is experiencing inconsistent application performance during peak sales events, leading to customer dissatisfaction and lost revenue. Their microservices-based application is deployed on Google Kubernetes Engine (GKE). They suspect network latency, inefficient inter-service communication, and difficulty in tracing requests across multiple services are the root causes. The company wants to gain better visibility into service-to-service communication, improve traffic management, and implement policies like retries and circuit breakers without modifying application code extensively. Which Google Cloud solution would BEST address these challenges?

  1. AMigrate all microservices to Cloud Functions for serverless execution.
  2. BImplement Cloud Monitoring and Cloud Logging for all microservices.
  3. CDeploy a Service Mesh (Istio) on their GKE cluster.
  4. DIncrease the number of GKE nodes and pods for all microservices.
Show answer & explanation

Correct answer: C. Deploy a Service Mesh (Istio) on their GKE cluster.

A service mesh like Istio provides advanced traffic management, observability, and security features for microservices. It allows for detailed tracing, setting policies like retries and circuit breakers, and gaining deep insights into inter-service communication without requiring changes to application code, directly addressing the identified challenges.

Why the other options are wrong

  • A. Migrating to Cloud Functions is a significant architectural change and does not inherently solve inter-service communication challenges or provide the granular control and observability of a service mesh for existing microservices.
  • B. While important for general observability, Cloud Monitoring and Logging alone do not provide advanced traffic management, policy enforcement, or detailed inter-service tracing without significant custom implementation.
  • D. Increasing nodes and pods might temporarily mitigate load issues but does not address the underlying problems of network latency, inefficient inter-service communication, or lack of tracing capabilities.

Service Mesh (Istio)

A service mesh, such as Istio, provides a programmable infrastructure layer for managing, securing, and observing inter-service communications in a microservices architecture.

  • Offers advanced traffic management (routing, retries, circuit breakers).
  • Enhances observability with tracing, metrics, and logging.
  • Enforces security policies for service-to-service communication.
  • Operates at the network layer, abstracting concerns from application code.

Memory trick: Mesh Your Microservices for Masterful Management.

More Analyze and optimize technical and business processes questions