14 results for "system design"

Articles (14)

Caching Concepts

Cache-Aside — System Design

Cache-Aside is the most commonly used caching pattern in system design. Reading from the database when cache misses Putting the database result into cache.

Database System Design

SQL vs NoSQL 🗄️ — Choosing the Right Database

SQL and NoSQL databases solve different data-storage requirements. In system design interviews, the important part is understanding their data model, consistency, scalability, and when to choose each one.

System Design - Concepts

Layer 4 vs Layer 7 Load Balancing — What's the Difference?

Load balancers can operate at different layers of the network stack. The two important types for system design are Layer 4 and Layer 7 load balancing.

System Design - Concepts

DNS in System Design

DNS stands for Domain Name System. It translates human-readable domain names into IP addresses.

System Design - Concepts

TCP vs UDP in System Design

TCP and UDP are two important transport layer protocols used for this purpose. Understanding the difference is important when designing APIs, real-time systems, video streaming, gaming systems, messaging platforms, and distributed applications.

System Design - Concepts

Stateful vs Stateless Services in System Design

State is information that a system needs to remember about a user or an ongoing operation. If a server stores this information locally and needs it to process future requests, the service is stateful.

System Design - Concepts

Horizontal vs Vertical Scaling in System Design

When an application starts receiving more traffic, we need to increase its capacity.

System Design - Concepts

CAP Theorem in System Design

CAP Theorem is one of the most important concepts in distributed system design.

System Design - Concepts

Latency vs Throughput in System Design

Latency and throughput are two important concepts used to understand the performance of a system.

System Design - Concepts

Performance in System Design

Performance describes how quickly and efficiently a system responds to requests and completes its work.

System Design - Concepts

Reliability in System Design

Reliability means the ability of a system to consistently perform the correct operation over a period of time.For example, imagine a banking application that is always accessible, but sometimes transfers the same payment twice.

System Design - Concepts

Availability in System Design

Availability means how often a system is operational and accessible when users need it. Imagine you are using a banking application at 2 AM. You try to check your account balance, but the application is down.

System Design - Concepts

Scalability in System Design

A scalable system should be able to handle this growth by adding or improving resources. The API server may start using high CPU and memory. Database connections may increase.

System Design - Concepts

System Design Explained

How do real-world applications handle millions of users, huge traffic, failures, and massive data? In this article, we understand the fundamentals of System Design with real-world examples using ASP.NET Core and SQL Server.

Never miss a new post 📬

Get an email whenever a new article, project, cheatsheet or video drops.

✅

ℹ️