
Statefulness is one of those concepts that sounds abstract until you have to pick a compute service for a real workload. Once you understand what it means for an application to be stateless or stateful, a lot of architecture decisions on the Professional Cloud Architect exam get easier to reason about.
A stateless system does not retain any data or session information between interactions. Each request stands on its own. The application has no memory of what happened in a previous request, and it does not need one to do its job.
A stateful system retains data or session information across interactions. What happened in the last request matters for the next one. The application has to remember something between calls.
That single difference drives how the system behaves under load, how easy it is to scale, and which Google Cloud service is the right fit.
Stateless systems are simpler to scale and are often used in distributed, scalable architectures. The reason is mechanical. If no instance is holding onto session data, you can start or stop instances without affecting functionality. A new request can be routed to any instance, and that instance has everything it needs to respond.
Stateful systems do not have that property. If a particular instance is holding the session data for a user, that user's next request has to come back to the same instance, or the data has to be replicated somewhere shared. Either approach adds complexity.
Cloud Run is the canonical stateless compute service on Google Cloud. It is designed to handle stateless workloads efficiently because it can quickly start or stop instances without any negative impact on the application's functionality. Containers spin up to handle traffic and spin down when traffic drops, and because no container is holding onto data between requests, this works without coordination.
If you see an exam question that specifically mentions stateless containers, you should strongly consider Cloud Run. The phrasing is a deliberate signal. The question is telling you the workload does not need to retain anything between requests, which is exactly the shape of workload Cloud Run is built for.
The Professional Cloud Architect exam will not usually ask you to define stateless. It will describe a workload and expect you to recognize the property and pick the right service.
If the scenario describes a containerized application that handles independent requests, does not need to remember user sessions between calls, and needs to scale up and down with traffic, that is a stateless workload and Cloud Run is the natural fit. If the scenario describes an application that has to maintain session state, hold a long-running connection, or write to local storage that needs to persist across restarts, that is stateful and you are looking at GKE with appropriate workload types, Compute Engine, or a managed stateful service depending on what the state actually is.
The question to ask yourself in the exam is whether the application needs to remember anything between requests. If the answer is no, the architecture gets simpler and the service options open up.
My Professional Cloud Architect course covers stateful vs stateless computing alongside the rest of the architecture and compliance material.