What's changed: Created Professional Cloud Developer Chapter 2 (Domain 1 "Design" part 2: storing/accessing data = Cloud SQL/AlloyDB/Spanner/Firestore/Bigtable/Cloud Storage/BigQuery, schema/row-key, eventual/strong consistency, signed URLs, BigQuery writes; availability/resilience/cost = region/zone distribution and latency, zonal/regional failover, resource requirements, serverless scale-to-zero, idempotency/exponential backoff).
2.2Designing availability, resilience, and cost
Understand geographic distribution and latency across regions/zones, data replication for zonal/regional failover, defining workload resource requirements, optimizing cost and resource usage, and designing reliability via idempotency and retries (exponential backoff).
Cloud-native apps must be resilient, elastic, and cost-efficient. Developers weave geographic distribution, resilience, and cost into the design.
2.2.1Geographic distribution and failover
Google Cloud services distribute across regions (geography) and zones; running closer to users lowers latency. For availability, add redundancy via data replication and prepare for zonal failover (to another zone in-region) or regional failover (to another region). Choose regional/multi-regional services (Spanner, multi-region Cloud Storage, etc.) by requirements. Map "tolerate zone failure = zonal redundancy/regional" and "tolerate regional failure = regional redundancy/multi-region."
2.2.2Resources, cost, and reliability
Define workload resource requirements (CPU/memory/concurrency) and allocate them without waste to optimize cost and performance. Serverless (Cloud Run/Functions) bills for usage and scales to zero when idle. For reliability, design idempotency so retries are safe, and retry transient failures with exponential backoff (avoid overload from synchronized retries). Map "pay-per-use, scale to zero = serverless" and "safe retries = idempotency + exponential backoff."
Common: requirement → design. E.g., "lower latency near users" = regional/edge placement; "tolerate zone failure" = zonal redundancy; "zero cost when idle" = serverless scale-to-zero; "retry on transient errors" = exponential backoff; "no duplicates on retry" = idempotency.
Watch the mix-ups: (1) Do not confuse zonal redundancy (zone failure) and regional redundancy (regional failure). (2) Retry with exponential backoff (immediate synchronized retries cause overload). (3) Without idempotency, retries cause duplicate processing.
2.2.3Section summary
- Distribute across regions/zones to lower latency; replication for zonal/regional failover
- Define resource requirements to optimize cost; serverless is pay-per-use, scale-to-zero
- Design reliability with idempotency + exponential backoff (safe retries)
Sign in to track progress — Log in.
Quick check
(just a quick review)Q1. To tolerate a single-zone failure within a region, which best fits?
Q2. To retry transient errors while avoiding overload, which best fits?
Q3. To ensure retries do not cause duplicate processing, what should you design in?
Q4. For a workload that should cost zero when idle, which is best?
Q5. To run near users and reduce latency, which approach best fits?
Q6. To tolerate a whole-region failure, which best fits?

