6 Patterns of Cache

Cache Doesn't Make Your System Faster. It Just Moves the Complexity Somewhere Else.

There's a dangerous misconception in software engineering: that adding a cache is a performance solution. It isn't. It's a trade-off – one that swaps database load for a new set of problems around consistency, failure modes, and operational complexity.

Every caching decision ultimately comes down to one question: who is responsible for writing to the cache, and when does that write happen?

Answer that question differently and you get six distinct patterns. Each one makes sense in a specific context and falls apart in others. Here's a map of all six – not just what they are, but why you'd reach for each one.

patterns-of-cache

Read More

MVCC Explained: Help Your Database NOT Freeze When Someone Else Hits “Update”

Ever wondered how thousands of users can read and write to the same database table at the same time without everything grinding to a halt? The answer, in most modern databases (PostgreSQL, MySQL/InnoDB, Oracle, and others), is a clever mechanism called MVCC – Multiversion Concurrency Control.

Let’s break it down in plain language, with a simple example you’ll never forget.

mvcc-feature
Read More

Angular 17 Firebase Storage: File Upload/Retrieve/Download/Delete example

In this tutorial, I will show you how to make Angular 17 with Firebase Storage Application: File Upload, Retrieve, Download, Delete using @angular/fire & AngularFireStorage. Files’ info will be stored in Firebase Realtime Database for Display/Delete operations.

Related Posts:
Angular 17 Firebase CRUD with Realtime Database
Angular 17 Firestore CRUD example
Angular 17 CRUD example with Rest API
Angular 17 Form Validation example
Angular 17 File upload example with Rest API

Read More