Blog
Mert Özen's blog posts on software development, backend, frontend, and DevOps.
Reading CAP and PACELC Correctly: Why "Pick 2 of 3" Is Wrong
CAP says that during a partition you must choose between linearizability (C) and every non-failing node answering (A); a partition (P) is not a property you choose but an event that happens to you, so "pick 2 of 3" is wrong. PACELC adds that without a partition you still trade latency for consistency. In the example the cart brings a removed book back after a partition and payment returns 503 on the minority side.
Consistency Models: Linearizability, Sequential, Causal and Eventual Consistency
A consistency model defines which histories of reads and writes a system allows: linearizability respects real time, sequential consistency only each client's own order, causal consistency happens-before, while eventual consistency only promises to converge eventually. A small C# checker evaluates five histories: a stale read after a write has finished is not linearizable but is sequential; not seeing your own write breaks both.