Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Write-Behind Invalidation | Core Cache Invalidation Patterns
Cache Invalidation Patterns

bookWrite-Behind Invalidation

Glissez pour afficher le menu

Write-Behind Invalidation

Write-behind invalidation is a caching pattern where changes made to cached data are not immediately written to the underlying data store. Instead, updates are collected and written asynchronously after a delay or when certain conditions are met.

How Write-Behind Works Internally

  • When you update data, the cache records the change and may mark the entry as "dirty";
  • The change is queued for later writing to the database or persistent storage;
  • A background process periodically flushes queued updates to the data store;
  • The cache remains the primary source for reads until the write-back is complete.

Impact on Consistency and Performance

  • Performance: Write-behind reduces write latency because your application does not wait for the data store to confirm each write;
  • Consistency: There is a window where the cache and the data store are out of sync. Reads from the cache may return newer data than the data store;
  • Throughput: Batch writing can improve throughput and reduce load on the data store during peak times.

Common Pitfalls

  • Data loss can occur if the cache server fails before queued changes are written to the data store;
  • Race conditions may happen if multiple updates to the same entry are not handled in order;
  • Delayed writes can lead to stale data in the data store, causing problems for systems that read directly from the database;
  • Complex recovery logic may be required to reconcile the cache and data store after failures.

Write-behind invalidation is most effective when your workload favors high write throughput and can tolerate eventual consistency between the cache and the underlying data store.

Minimal Analogy: Library Book Returns

Imagine a library with a popular book. When you return the book, instead of immediately updating the library catalog, the librarian drops your return slip into a box to process later. The catalog still shows the book as checked out until the librarian updates the system in batches.

This is similar to write-behind cache invalidation:

  • You (the user) return the book (update data);
  • The librarian (cache) temporarily holds your return slip (the change);
  • The catalog (database) is updated after a short delay, not instantly.

This approach reduces the workload on the catalog system, but there can be a short time when the catalog is out of sync with the actual books on the shelves.

question mark

Which statement accurately describes a potential effect or pitfall of using write-behind cache invalidation?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 3

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 2. Chapitre 3
some-alt