·

System Design Deep Dive - 18 Regional Cache vs Global Cache

Post by ailswan May. 25, 2026

中文 ↓

🎯 Regional Cache vs Global Cache


1️⃣ Core Framework

When comparing Regional Cache vs Global Cache, I frame it as:

  1. Cache location
  2. Read latency
  3. Cache hit ratio
  4. Freshness and consistency
  5. Invalidation complexity
  6. Failure isolation
  7. Cross-region dependency
  8. Trade-offs: locality vs sharing vs coherence

2️⃣ Why Cache Topology Matters

Caching is not only about storing hot data.

In multi-region systems, cache placement affects latency, availability, consistency, and failure behavior.


Basic Question

Should each region have its own cache?

or

Should all regions share one cache layer?

👉 Interview Memorization

Cache topology matters because the cache can either improve local latency or become a cross-region dependency on the hot path.


3️⃣ What Is a Regional Cache

A regional cache is deployed separately in each region.

Each region reads and writes its own local cache.


Architecture

US Service → US Cache → Database

EU Service → EU Cache → Database

Asia Service → Asia Cache → Database

Examples


👉 Interview Memorization

A regional cache keeps cached data close to the services and users in each region, optimizing local latency and regional independence.


4️⃣ What Is a Global Cache

A global cache is shared across multiple regions.

Services in different regions depend on the same logical cache layer.


Architecture

US Service

EU Service

Asia Service

↓

Shared Global Cache

↓

Database

Global Cache Can Mean


👉 Interview Memorization

A global cache gives multiple regions a shared cache view, but it may introduce cross-region latency and a larger failure blast radius.


5️⃣ Regional Cache Benefits


Benefits


Local Read Path

User

↓

Local Region Service

↓

Local Cache

👉 Interview Memorization

Regional caches are best when low latency and regional independence matter more than having one perfectly shared cache view.


6️⃣ Regional Cache Costs


Costs


Example

Product updated in US

↓

US cache invalidated

↓

EU cache still has old value

↓

Asia cache still has old value

👉 Interview Memorization

Regional caches improve locality, but each region may have a different cached view until invalidation or expiration catches up.


7️⃣ Global Cache Benefits


Benefits


Shared Read Path

Region A

Region B

Region C

↓

Same Cache Layer

👉 Interview Memorization

Global caches can improve cache reuse and simplify logical invalidation because all regions share the same cache layer or namespace.


8️⃣ Global Cache Costs


Costs


Dangerous Path

EU Service

↓

US Global Cache

↓

Database

Every cache access pays cross-region latency.


👉 Interview Memorization

A global cache may simplify sharing, but it can turn a local read into a cross-region dependency, which hurts latency and availability.


9️⃣ Read Latency Trade-off


Regional Cache

User → Local Service → Local Cache

Usually low latency.


Global Cache

User → Local Service → Remote Cache

May add cross-region round trips.


👉 Interview Memorization

Regional caches usually win for read latency because cache access stays inside the local region.


🔟 Cache Hit Ratio Trade-off


Regional Cache

Traffic is split by region.

US cache warms from US traffic.

EU cache warms from EU traffic.

Asia cache warms from Asia traffic.

Each cache has a smaller local request stream.


Global Cache

Traffic is combined.

All regions warm the same logical cache.

This may improve hit ratio for globally shared data.


👉 Interview Memorization

Global caches can improve hit ratio for shared data because all regions contribute to warming the same cache.

Regional caches may duplicate entries and warm independently.


1️⃣1️⃣ Freshness Trade-off

Freshness means how quickly cached data reflects the source of truth.


Regional Cache Freshness Problem

Write in Region A

↓

Invalidate Region A cache

↓

Region B cache may still be stale

Global Cache Freshness

A global cache can make invalidation logically simpler because there is one shared cached value.

But if it is replicated globally, replicas can still lag.


👉 Interview Memorization

Regional caches need cross-region invalidation or short TTLs to control staleness.

Global caches simplify the logical view, but replicated global caches can still have propagation delay.


1️⃣2️⃣ Invalidation Trade-off

Cache invalidation is often the hardest part.


Regional Invalidation

Update source of truth

↓

Send invalidation to every region

↓

Each regional cache evicts key

Global Invalidation

Update source of truth

↓

Evict one shared cache key

Logically simpler.


Regional Invalidation Tools


👉 Interview Memorization

Regional caches require invalidation fanout, while global caches usually have simpler logical invalidation.


1️⃣3️⃣ Failure Isolation Trade-off


Regional Cache Failure

EU Cache fails

↓

EU region degrades

US and Asia continue

Failure is isolated.


Global Cache Failure

Global Cache fails

↓

All regions may degrade

Blast radius is larger.


👉 Interview Memorization

Regional caches have better failure isolation because one cache outage affects only its region.

A global cache can create a larger blast radius.


1️⃣4️⃣ Availability Trade-off

Regional caches help regions operate independently.


Regional Independence

Region can serve hot reads locally

even if cross-region links are degraded

Global Dependency

Local service depends on remote cache

↓

Network partition affects reads

👉 Interview Memorization

Regional caches usually improve availability in multi-region systems because reads do not depend on remote cache access.


1️⃣5️⃣ Consistency Models

Cache consistency should be explicit.


Common Models


Example

User updates profile

↓

Next read bypasses cache or reads primary

This avoids read-after-write surprises.


👉 Interview Memorization

Cache design must define acceptable staleness, especially when each region has its own cache.


1️⃣6️⃣ Best Use Cases for Regional Cache


Use Regional Cache When


Examples


👉 Interview Memorization

Regional caches are usually the default for user-facing multi-region read paths because they keep reads local and reduce cross-region dependency.


1️⃣7️⃣ Best Use Cases for Global Cache


Use Global Cache When


Examples


👉 Interview Memorization

Global caches fit shared, relatively small, low-latency-insensitive data where one logical view matters more than local cache access.


1️⃣8️⃣ Hybrid Pattern

Many real systems use both.


Architecture

Local Service

↓

Regional Cache

↓

Global Source of Truth

Optional Global Layer

Regional Cache

↓

Global Cache / Replicated Metadata Cache

↓

Database

Why Hybrid Works


👉 Interview Memorization

A common design uses regional caches for hot serving paths and a shared source of truth underneath, sometimes with a global cache only for small shared metadata.


1️⃣9️⃣ Comparison Table


Dimension Regional Cache Global Cache
Read latency Low locally Higher for distant regions
Hit reuse Per region Shared globally
Failure isolation Better Worse
Cross-region dependency Lower Higher
Invalidation Fanout required Logically simpler
Staleness risk Per-region divergence Shared view, but replication may lag
Cost More duplicated memory More network cost
Best for User-facing hot reads Shared metadata/reference data

👉 Interview Memorization

Regional cache optimizes locality and isolation.

Global cache optimizes sharing and a unified cache view.


2️⃣0️⃣ Observability


Monitor


👉 Interview Memorization

Multi-region cache observability should track hit ratio, latency, staleness, invalidation lag, and backend fallback by region.


2️⃣1️⃣ Best Practices


Practical Rules


Design Principle

Local cache improves latency.

Shared cache improves reuse.

Fresh cache requires invalidation.

👉 Interview Memorization

In user-facing multi-region systems, regional caches are usually safer because they preserve local latency and regional availability.


🧠 Staff-Level Answer Final


👉 Full Interview Answer

A regional cache means each region has its own cache close to local services and users.

This gives low read latency, better regional fault isolation, and fewer cross-region dependencies on the hot path.

The cost is that each region warms independently, duplicate memory may be used, and invalidation has to fan out across regions.

A global cache means multiple regions share the same logical cache layer.

This can improve global cache reuse and make logical invalidation simpler, but it may introduce cross-region latency, network-partition risk, and a larger blast radius.

For most user-facing multi-region systems, I would prefer regional caches in front of a shared or replicated source of truth.

I would use TTLs, versioned keys, or event-driven invalidation to control staleness.

I would consider a global cache for small shared metadata, feature flags, configuration, or low-QPS reference data where a unified view matters more than local latency.

The core trade-off is locality and failure isolation versus sharing and cache coherence.


⭐ Final Insight

Regional Cache vs Global Cache 的核心不是:

“哪个 cache 更高级”

而是:

Locality

  • Freshness
  • Invalidation
  • Hit Ratio
  • Blast Radius
  • Cross-region Dependency

最重要的一句话:

Regional cache keeps reads local.

Global cache keeps the view shared.


中文部分

🎯 Regional Cache vs Global Cache(区域缓存 vs 全局缓存)


核心理解

在多区域系统里,cache 不只是性能优化。

Cache 的位置会影响:

核心问题是:

每个 region 都有自己的 cache?

还是所有 region 共享一个 cache?

Regional Cache 是什么

Regional Cache 指的是每个区域都有自己的本地缓存。

US Service → US Cache

EU Service → EU Cache

Asia Service → Asia Cache

Regional Cache 优点


Regional Cache 缺点


Global Cache 是什么

Global Cache 指的是多个 region 共享同一个逻辑缓存层。

US Service

EU Service

Asia Service

↓

Global Cache

Global Cache 优点


Global Cache 缺点


延迟对比

Regional Cache:

User → Local Service → Local Cache

延迟低。

Global Cache:

User → Local Service → Remote Cache

可能需要跨区域访问。


Freshness / Invalidation 对比

Regional Cache 的问题:

更新 source of truth

↓

需要通知所有 region 删除旧 cache

如果某个 region 没收到 invalidation,就可能读到旧数据。


Global Cache 的问题:

逻辑 invalidation 简单

但如果 global cache 自身是复制的,仍然可能有复制延迟

什么时候用 Regional Cache

适合:

常见例子:


什么时候用 Global Cache

适合:

常见例子:


Hybrid Pattern

很多系统会混合使用:

Local Service

↓

Regional Cache

↓

Global Source of Truth

热路径使用 Regional Cache。

小型共享元数据可以使用 Global Cache。


对比表

维度 Regional Cache Global Cache
读取延迟 本地低延迟 远端可能高延迟
Cache hit 每个 region 独立 全局共享
故障隔离 更好 更差
跨区域依赖
Invalidation 需要 fanout 逻辑更简单
Staleness region 间可能不同 视图更统一
适用场景 用户热路径 共享元数据

面试回答模板

A regional cache means each region has its own local cache.

It gives lower latency, better regional fault isolation, and avoids cross-region cache calls on the hot path.

The cost is that each region warms independently and invalidation must be propagated across regions.

A global cache gives all regions a shared logical cache view, which can improve hit reuse and simplify invalidation.

But it can add cross-region latency, create network dependency, and increase blast radius.

For most user-facing multi-region systems, I would use regional caches in front of the source of truth, with TTL, versioned keys, or event-driven invalidation.

I would use global cache mainly for small shared metadata or control-plane data where consistency of the cache view matters more than local latency.


最终总结

Regional Cache = local latency + fault isolation

Global Cache = shared view + cache reuse

最重要的原则:

Do not put remote cache access on the critical user path unless the trade-off is intentional.

Implement