SysDesPro
Posts
Users
Contacts
New post
Sign in
Home
Latest published posts
This website uses cookies to ensure you get the best experience.
Learn more
.
Accept
Latest published posts
Recently added published articles
Lead Lookup System Design (case study)
A high-scale lead management system designed to store and retrieve contact information for 200M users. The system supports lookups by phone number, email address, and SSN to resolve associated user profiles.A typical request maps a single contact identifier to exactly one user. ReplacingMergeTreeis
Jan 12, 2026
1
0
case-study
oltp
olap
Availability patterns
Availability patternsdescribe architectural techniques that keep systems operational despite failures, overload, or partial outages. High availability matters most in systems that support continuous business processes, such as payment authorization or customer-facing APIs, where downtime directly tr
Jan 05, 2026
0
0
availability
fault-tolerance
high-availability
Consistency patterns
Consistency patternsdescribe how systems behave when multiple actors read and write shared data, especially under concurrency, failure, or distribution. Database transactions are one of the strongest tools for enforcing consistency, but they coexist with weaker models that trade correctness guarante
Dec 29, 2025
1
0
consistency
Domain Name System (DNS)
Domain Name System (DNS)is the distributed naming system that translates human-readable domain names into IP addresses that machines can route. In practical system design, DNS often becomes a hidden dependency whose behavior directly impacts availability, latency, and security.An e-commerce checkout
Dec 22, 2025
1
0
dns
distributed-systems
infrastructure
Database Locks and Transactions
Many production data bugs originate not from missing transactions, but from misunderstanding what transactions actually guarantee. Systems often wrap logic inBEGINandCOMMITand assume correctness follows automatically. Under concurrent load, these systems still oversell inventory, double-charge users
Dec 15, 2025
0
0
database
atomicity
consistency
Database Transactions
Database transactions are the foundation of correctness in almost every non-trivial system. Any system handling money transfers, inventory updates, or user state changes relies on transactions to prevent partial writes and inconsistent reads. A payment service that debits an account but fails to cre
Dec 15, 2025
0
0
database
acid
Scalability for Dummies - Part 4: Asynchronism
This 4th part of the series builds on the previous discussion inScalability for Dummies - Part 3: Cache. Imagine trying to book a popular concert ticket online. A user selects a seat, but instead of an immediate confirmation, the website asks to return in two hours when the order is processed. This
Dec 08, 2025
0
0
scalability
asynchronism
Scalability for Dummies - Part 3: Cache
After followingScalability for Dummies - Part 2: Database, the database can now handle massive volumes of data and high concurrency. Despite this, users may still experience slow page loads when queries fetch large amounts of data. The bottleneck is no longer the database itself but the repeated ret
Nov 30, 2025
0
0
scalability
cache
Scalability for Dummies - Part 2: Database
After implementing horizontal scaling on servers and handling thousands of concurrent requests inScalability for Dummies — Part 1: Clones, performance may still degrade over time. Applications often slow down and eventually fail due to database limitations. Even with a perfectly scaled front end, th
Nov 30, 2025
0
0
scalability
database
Scalability for Dummies — Part 1: Clones
Simple, practical guide to the first and often-most-used approach to scaling: making copies of what works. No PhD required — just common sense, a few engineering patterns, and awareness of the pitfalls.By Your Friendly Engineer · Part 1 in a short series on practicalscalability. Acloneis simply anot
Nov 24, 2025
0
0
scalability
clones
Software System Design Topics
Overview:A compact guide to the main topics you’ll encounter when designing modern software systems — principles, patterns, trade-offs, and practical concerns for reliable, scalable, and maintainable systems.Audience:engineers, technical leads, and architects looking for a structured checklist and a
Nov 21, 2025
0
0
software-system-design
CAP Theorem in System Design
TheCAP theoremis one of the most fundamental principles in distributed system design. It defines the trade-offs between three key properties —Consistency,Availability, andPartition tolerance— and explains why it’s impossible to achieve all three simultaneously in a distributed data system. Formally
Nov 12, 2025
1
0
consistency
availability
partition-tolerance
Consistency in System Design
Consistency is one of the foundational concerns when designing distributed systems. It answers the question:when a client reads data, how fresh or correct should that data be compared to the most recent write?Different applications have different tolerances for stale or conflicting data. This articl
Nov 12, 2025
1
0
consistency
cap-theorem
Availability in System Design — Principles, Patterns, and Practical Guidance
What availability means, how it's measured, architecturalavailability patterns, practical trade-offs, and how to validate an availability target. Availabilityis the probability that a system performs its required function at a given point in time. Practically, it answers the question:“Is the service
Nov 11, 2025
3
0
availability
Scalability, Availability & Stability Patterns
Modern software systems must handle rapid growth, unpredictable load, and unexpected failures — all without compromising user experience. Three key pillars define such systems:scalability,availability, andstability. Each comes with its own design patterns and trade-offs that engineers use to build r
Nov 09, 2025
1
0
scalability
availability
stability
Cache in Software System Design — A Practical Guide
Caching is the process of temporarily storing frequently accessed data in a faster storage layer to reduce latency, save computation, and improve system scalability. Instead of recomputing or refetching data from a slower source like a database or API, a cache serves it quickly from memory or nearby
Nov 08, 2025
2
0
cache
Scalability in Software System Design — A Practical Guide
Scalability is the ability of a system to handle increased load — such as more users, data, or requests — without unacceptable performance degradation. It can be achieved in two main ways: It also includes operational, cost, and development scalability — how the system, budget, and team scale with g
Nov 08, 2025
3
0
scalability
Understanding Caching in Scalable Systems
Caches can exist on the client (OS or browser), on the server, or in a dedicated cache layer. Content delivery networks (CDNs) act as distributed caches to improve performance and availability. Reverse proxies and caching servers like Varnish can serve static and dynamic content directly. Web server
Nov 04, 2025
1
0
cache
scalability
performance-optimization
Filter posts
Filter by tags:
Search
Show:
Latest first
Popular first