Search
Lessons (9)
- Time, Consistency and Distributed Transactions
Reason about clocks, ordering, split brain, locks, CRDTs and transactions without promising impossible global certainty. ![Distributed correctness: clocks …
- ACID, Transactions & Locks
… without a distributed lock. Locks, deadlocks and good habits Locks protect conflicting work, but long transactions hold them …
- Monolith vs Microservices
… debug ❌ Distributed system complexity Calls between parts ✅ Fast, in-memory function calls ❌ Slow, unreliable network calls Transactions ✅ One …
- Data in Microservices: Sagas & the Outbox Pattern
… We need other tools. Why not a distributed transaction (2PC)? Two-phase commit asks every participant "can you …
- SQL Language, Identifiers & Data Types
… Many systems call COMMIT and ROLLBACK transaction-control statements. Q7: Identity, sequence and UUID An identity/auto-increment …
- SQL vs NoSQL Databases
… when the network between servers breaks (a P artition), a distributed database must choose between: - C onsistency: refuse …
- Kafka vs RabbitMQ & the Kafka Ecosystem
… side RabbitMQ Kafka --- --- --- Model Message broker with queues Distributed commit log After consumption Message is removed Message is …
- Message Queues & RabbitMQ
… properties.messageId)) return channel.ack(msg); await db.transaction(async (tx) = { await doTheWork(tx, job); await tx.processedMessages …
- Event-Driven Architecture
… when saving + publishing Transactional outbox pattern Hard to debug "what happened?" Correlation IDs, distributed tracing, an event catalog …