Question

Difficulty: MediumPlanning Serverless Compute Options (Cloud Run and Cloud Functions)

Your organization needs to deploy a stateless REST API packaged as a custom Docker container image containing a legacy C++ binary dependency. The API must scale down to zero instances during idle periods to minimize costs and be capable of processing up to 80 concurrent HTTP requests per container instance. Which Google Cloud serverless compute option should you recommend?

  1. Cloud RunAnswer
  2. B
    Cloud Functions (1st gen)
  3. C
    Cloud Functions (2nd gen)
  4. D
    Compute Engine with Spot VMs

Answer

Cloud Run is the correct choice because it natively executes custom stateless container images with non-standard binary dependencies, supports multi-request concurrency per instance, and scales down to zero when idle.
Cloud Run is a fully managed serverless platform built to run stateless container images that listen for web requests. It natively accommodates custom C++ binaries built into the container, handles request concurrency (such as 80 concurrent requests per container instance), and automatically scales down to zero instances when no traffic is present.

Step-by-Step Solution

1
Identify workload constraints and architectural requirements
The requirements specify a custom Docker container image, legacy compiled C++ library dependencies, 80 concurrent requests per instance, automatic scale-to-zero capability, and a serverless operational model.
Determining the correct compute option requires matching application constraints to GCP platform capabilities.
2
Compare serverless compute options against containerization and concurrency parameters
Cloud Run natively deploys container images containing arbitrary dependencies and allows configuring concurrency up to 1000 requests per instance while scaling to zero during idle times. Cloud Functions is meant for source-code event handlers.
Cloud Run is explicitly designed to bring custom containerized web workloads into a fully managed serverless environment.

Key Concept

Selecting Cloud Run for containerized serverless workloads with custom binary dependencies and request concurrency.
Rate this question