QuestionQ195

Designing and planning a cloud solution architecture

You are designing the architecture for a stateless, public-facing containerized web application. The marketing department uses this web application to run unpredictable flash sales that create sudden, massive spikes in user traffic. The application is a critical revenue driver and must remain available and responsive to users at all times. Your design must automatically accommodate large traffic fluctuations and enable new application versions to be deployed with zero downtime, along with safe and rapid rollback capability. What should you do?

  • A Deploy the application to a Google Kubernetes Engine (GKE) cluster. Use the Recreate deployment strategy to roll out new application versions.
  • B Deploy the application to a single, large Compute Engine instance and use a startup script to pull and run the latest container image on boot.
  • C Deploy the application as a Cloud Run service. Configure request-based auto-scaling and use gradual rollouts by splitting traffic between revisions.
  • D Deploy the application to a regional Managed Instance Group (MIG). Configure a CPU-based autoscaling policy and use the MIG's rolling update feature for deployments.
Explanation

Cloud Run is designed to run stateless containers and automatically scales revisions to serve incoming requests. Its immutable revisions support percentage-based traffic splitting, allowing gradual deployments without interrupting in-flight requests, and traffic can be shifted back to a prior revision for a fast rollback.

Learn more

Community Discussion

No comments yet. Be the first to start the discussion!