System Design Aug 18, 2026 4 min read
Event-Driven Architecture Decisions Explained
Learn when event-driven architecture helps, where its reliability boundaries sit, and how to choose events, commands, state, and recovery contracts.
Tag
52 articles with this tag. Follow these related notes when you want a narrower study path.
System Design Aug 18, 2026 4 min read
Learn when event-driven architecture helps, where its reliability boundaries sit, and how to choose events, commands, state, and recovery contracts.
System Design Aug 4, 2026 10 min read
Learn to design composite, covering, and partial PostgreSQL indexes from real query predicates, ordering, projections, selectivity, and write-cost evidence.
System Design Aug 4, 2026 11 min read
Learn to diagnose PostgreSQL lock contention, blockers, waiters, long transactions, idle-in-transaction sessions, pool exhaustion, and safe cancellation.
System Design Aug 4, 2026 11 min read
Learn how to diagnose database query performance using user impact, execution plans, planner estimates, I/O, locks, MVCC, connection pools, and safe production validation.
System Design Aug 4, 2026 10 min read
Learn how PostgreSQL MVCC, snapshots, dead tuples, autovacuum, visibility maps, freezing, HOT updates, and table or index bloat affect backend performance.
System Design Aug 4, 2026 10 min read
Learn to read PostgreSQL EXPLAIN plans safely, including costs, estimated and actual rows, loops, scans, joins, sorts, buffers, WAL, and production boundaries.
System Design Aug 4, 2026 10 min read
Use a production runbook to connect user impact, query fingerprints, waits, plans, estimates, buffers, locks, MVCC, pools, mitigations, and verified recovery.
System Design Aug 4, 2026 10 min read
Learn how query planners estimate rows using statistics, selectivity, histograms, most-common values, correlation, extended statistics, and production validation.
System Design Aug 4, 2026 10 min read
Learn PostgreSQL table partitioning, partition keys, pruning, lifecycle maintenance, indexes, constraints, prepared queries, and production validation.
System Design Aug 4, 2026 11 min read
Learn expand-contract database migrations, compatible deploy ordering, bounded backfills, concurrent indexes, constraint validation, locking, and safe production rollout.
System Design Aug 2, 2026 11 min read
Control overload with explicit demand, bounded buffering, queue age, rejection, expiry, and end-to-end flow policies across APIs, streams, and brokers.
System Design Aug 2, 2026 10 min read
Contain backend failures by isolating concurrency, threads, connection pools, and queues across priorities, tenants, operations, and dependencies.
System Design Aug 2, 2026 10 min read
Trace backend work across HTTP and message queues with W3C context, safe baggage, meaningful spans, sampling boundaries, and broken-trace tests.
System Design Aug 2, 2026 10 min read
Design explicit fallback modes that preserve business invariants, authorization, freshness contracts, and observable recovery under dependency failure.
System Design Aug 2, 2026 10 min read
Design Kubernetes startup, liveness, and readiness probes that route safely, recover local deadlocks, and avoid overload-driven restart storms.
System Design Aug 2, 2026 10 min read
Protect backend latency and useful throughput with explicit admission, deliberate load shedding, and evidence-tuned concurrency limits.
System Design Aug 2, 2026 12 min read
Learn how logs, metrics, traces, and events work together to diagnose backend failures, protect telemetry quality, and verify recovery.
System Design Aug 2, 2026 11 min read
Build a resilient vendor-neutral telemetry pipeline with OTLP receivers, memory limits, batching, redaction, retries, queues, and self-monitoring.
System Design Aug 2, 2026 11 min read
Follow an evidence-driven incident runbook from SLO alert and triage through metrics, traces, logs, mitigation, recovery verification, and postmortem.
System Design Aug 2, 2026 10 min read
Run an evidence-driven backend overload response from page and user impact through mitigation, controlled recovery, and durable verification.
System Design Aug 2, 2026 11 min read
Design backend systems that prevent, contain, degrade through, recover from, and verify failures while preserving user objectives and capacity.
System Design Aug 2, 2026 11 min read
Use RED, USE, and the four golden signals to diagnose request and resource failures with PromQL, safe labels, histograms, and exemplars.
System Design Aug 2, 2026 11 min read
Turn user journeys into measurable SLIs, realistic SLOs, error budgets, and multi-window burn-rate alerts that page on sustained impact.
System Design Aug 2, 2026 11 min read
Design searchable JSON logs and correlation IDs that connect requests, messages, traces, and failures without leaking secrets or exploding cost.
System Design Aug 2, 2026 10 min read
Design end-to-end request budgets that distinguish hop timeouts, propagated deadlines, cooperative cancellation, and durable side effects under backend overload.
System Design Jul 29, 2026 12 min read
Design dead-letter handling with bounded retries, failure metadata, alerting, approved replay, and duplicate-safe Java and Node.js recovery workflows.
System Design Jul 29, 2026 11 min read
Make at-least-once message processing duplicate-safe with PostgreSQL unique constraints, atomic business updates, and Java and Node.js consumers.
System Design Jul 29, 2026 12 min read
Compare at-most-once, at-least-once, and exactly-once messaging by tracing producer, broker, consumer, acknowledgment, and side-effect failures.
System Design Jul 29, 2026 11 min read
Coordinate cross-service workflows with Saga choreography or orchestration, durable state, idempotent steps, compensation, and manual recovery.
System Design Jul 29, 2026 11 min read
Prevent database and message broker dual-write failures with a transactional outbox, PostgreSQL locking, and Java and Node.js publishers.
System Design Jul 25, 2026 9 min read
Learn what consistency, availability, and partition tolerance mean during failures, why pick-two is misleading, and how PACELC improves the model.
System Design Jul 25, 2026 9 min read
Learn why database deadlocks happen, how PostgreSQL and MySQL detect them, and how to prevent and retry them safely in Java and Node.js.
System Design Jul 25, 2026 9 min read
Compare database isolation levels, concurrency anomalies, PostgreSQL and MySQL behavior, and safe Spring and Node.js transaction patterns.
System Design Jul 25, 2026 9 min read
Design database backups around RPO and RTO, compare logical, physical, snapshot, and PITR methods, and build restore drills that prove recovery.
System Design Jul 25, 2026 9 min read
Learn how database read replicas work, where replica lag breaks correctness, and how to route reads safely in Spring and Node.js services.
System Design Jul 1, 2026 8 min read
Learn database connection pooling for backend systems, including pool size, timeouts, leaks, max connections, queues, monitoring, and common mistakes.
System Design Jul 1, 2026 7 min read
Learn database migration rollback strategies, including backward-compatible changes, expand-contract migrations, backups, deploy order, and recovery plans.
System Design Jul 1, 2026 6 min read
Learn the N+1 query problem in backend apps, including ORM loading, SQL examples, eager loading, batching, joins, query counts, and fixes.
API Design Jun 29, 2026 5 min read
Learn what an API gateway does in backend architecture, including routing, authentication, rate limiting, observability, and tradeoffs.
System Design Jun 29, 2026 5 min read
Learn how background jobs work in backend systems, including queues, workers, retries, scheduling, idempotency, and monitoring.
System Design Jun 29, 2026 5 min read
Learn common backend caching strategies, including cache-aside, write-through, write-behind, TTLs, invalidation, and cache stampede risks.
System Design Jun 29, 2026 5 min read
Learn how the circuit breaker pattern protects backend services from cascading failures, with closed, open, and half-open states.
System Design Jun 29, 2026 6 min read
Learn what database sharding is, when backend systems need it, how shard keys work, and what tradeoffs sharding creates.
System Design Jun 29, 2026 5 min read
Learn what database transactions are, why ACID matters, how commits and rollbacks work, and what backend developers should know.
System Design Jun 29, 2026 4 min read
Learn what distributed locks are, when backend systems use them, why they are risky, and what safer alternatives to consider.
System Design Jun 29, 2026 5 min read
Learn what eventual consistency means in distributed systems, why stale reads happen, and how backend teams design around them.
System Design Jun 29, 2026 5 min read
Learn how load balancing distributes traffic across backend servers, including algorithms, health checks, sticky sessions, and tradeoffs.
System Design Jun 29, 2026 5 min read
Learn how message queues work in backend systems, including producers, consumers, retries, dead-letter queues, ordering, and idempotency.
System Design Jun 29, 2026 5 min read
Learn safe backend retry patterns, including exponential backoff, jitter, retry budgets, idempotency, and when not to retry.
System Design Jun 28, 2026 5 min read
Learn how database indexes work, why they speed up reads, when they slow down writes, and how backend developers should choose indexes.
System Design Jun 28, 2026 5 min read
Learn how optimistic locking prevents lost updates in backend systems using version columns, compare-and-swap updates, and 409 conflicts.
API Design Jan 21, 2026 5 min read
Compare REST and RPC API styles through resources, actions, payload design, caching, versioning, and backend team workflows.