Intrigued by the art of cloud architecture? Discover how to design, develop, and manage robust, secure, scalable, and dynamic solutions on Google Cloud as you prepare for the Professional Cloud Architect exam!
Prepare and test your skills
Prepare and test your skills
Worked example. The correct answer is already marked and every option is explained below, so there is nothing to select here. To answer questions yourself, start the free trial.
Keep the momentum going with these hand-picked practice scenarios
Want more questions like this?
Get a free certification question every week.
Last updated
An enterprise operates an on-premises monolithic application running on virtual machines. The application consists of a public HTTP web frontend with unpredictable traffic spikes, along with a stateful inventory backend that requires specialized operational controls and custom storage configurations. Deployments currently suffer from long lead times, and resource utilization is inefficient because compute capacity must remain over-provisioned to handle peak traffic.
You are tasked with architecting a cloud-first modernization strategy on Google Cloud that refactors the architecture into cloud-native patterns to enhance agility, enable fine-grained autoscaling, and optimize compute resources.
Which refactoring strategy should you recommend?
Deconstruct the monolithic frontend into stateless containerized microservices running on Cloud Run, and refactor the stateful inventory backend into containerized services running on Google Kubernetes Engine (GKE) backed by managed storage.
Rewrite all frontend and backend application logic into event-triggered Cloud Run functions, maintaining local in-memory session caching across invocation cycles.
Rehost the monolithic virtual machine instances directly onto Google Compute Engine managed instance groups (MIGs) using custom images and instance templates.
Containerize the entire monolithic application stack into a single large container image and run it on a Compute Engine VM with attached Persistent Disks.
Deconstruct the monolithic frontend into stateless containerized microservices running on Cloud Run, and refactor the stateful inventory backend into containerized services running on Google Kubernetes Engine (GKE) backed by managed storage.
This strategy decomposes a monolithic application into loosely coupled microservices by aligning specific application tiers with the most suitable cloud-native container execution environments. The user-facing HTTP components are refactored into stateless containers deployed to Cloud Run, while complex, stateful components are isolated and hosted on Google Kubernetes Engine (GKE).
Mixing Cloud Run for stateless HTTP microservices with GKE for stateful or orchestrator-dependent services is the recommended Google Cloud pattern for modular application modernization. It leverages serverless agility where elasticity is needed while retaining deep Kubernetes control where complex storage and operational configurations are required.
Rewrite all frontend and backend application logic into event-triggered Cloud Run functions, maintaining local in-memory session caching across invocation cycles.
Rehost the monolithic virtual machine instances directly onto Google Compute Engine managed instance groups (MIGs) using custom images and instance templates.
Containerize the entire monolithic application stack into a single large container image and run it on a Compute Engine VM with attached Persistent Disks.