A cloud engineering team is designing a serverless solution to host an HTTP web microservice written in Python. The service requires installing a custom Linux system library (`ffmpeg`) for media processing, and must handle up to 50 concurrent requests per container instance to reduce cold-start latency and lower operational costs. Which Google Cloud compute option should the team choose?
- Cloud Run, because it deploys container images allowing custom system libraries and supports handling multiple concurrent requests per container instance.Answer
- BCloud Functions (1st gen), because standard Cloud Functions runtimes automatically bundle pre-installed media processing libraries such as ffmpeg.
- CCompute Engine unmanaged instance group, because serverless compute options on Google Cloud do not support handling concurrent HTTP traffic.
- DCloud Functions for Firebase, because it is the only Google Cloud serverless product that allows containerized custom OS binaries.
Answer
Cloud Run, because it deploys container images allowing custom system libraries and supports handling multiple concurrent requests per container instance.
Cloud Run is the optimal choice for this scenario because it runs arbitrary container images, allowing the installation of custom Linux packages like `ffmpeg`. Furthermore, Cloud Run allows configuring concurrency (up to 1000 requests per container), which satisfies the requirement to handle 50 concurrent requests per instance to reduce cold starts and cost.
Step-by-Step Solution
Key Concept
Selecting Cloud Run for containerized serverless microservices requiring custom OS binaries and multi-request concurrency.