System Design Basics

0.0(0)
studied byStudied by 0 people
full-widthCall with Kai
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/100

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

101 Terms

1
New cards
Load Balancer
Distributes incoming requests across multiple servers to improve reliability and scalability.
2
New cards
Reverse Proxy
Server that receives client requests and forwards them to backend servers, hiding internal structure.
3
New cards
Horizontal Scaling
Adding more servers to handle increased load.
4
New cards
Vertical Scaling
Upgrading server hardware to increase capacity.
5
New cards
Microservices
Breaking an application into independent, loosely coupled services.
6
New cards
Monolith
A single unified codebase or deployment handling all functionality.
7
New cards
Service-Oriented Architecture
A design where services communicate over a network.
8
New cards
API Gateway
Entry point that routes requests to multiple services and handles cross-cutting concerns like auth.
9
New cards
REST API
Architectural style using HTTP verbs and resources.
10
New cards
GraphQL
Query language allowing clients to specify exactly the data they need.
11
New cards
gRPC
High-performance RPC framework using HTTP/2 and Protocol Buffers.
12
New cards
Message Queue
A system to decouple producers and consumers using asynchronous messages.
13
New cards
Event-Driven Architecture
System where services communicate via events rather than direct calls.
14
New cards
Pub/Sub
Publishers send messages to topics, subscribers receive them asynchronously.
15
New cards
Caching
Storing frequently accessed data in fast storage to reduce latency.
16
New cards
CDN (Content Delivery Network)
Geographically distributed servers delivering content closer to users.
17
New cards
Database Sharding
Splitting data across multiple databases for scale.
18
New cards
Database Replication
Keeping multiple copies of data synchronized for high availability.
19
New cards
Master-Slave Replication
One primary DB for writes, secondary for reads.
20
New cards
Leader-Follower Replication
Modern term for master-slave architecture.
21
New cards
Failover
Automatically switching to a backup system when a primary fails.
22
New cards
CAP Theorem
Trade-off between Consistency, Availability, and Partition tolerance in distributed systems.
23
New cards
Consistency Models
Strong, eventual, causal, etc., levels of data consistency.
24
New cards
ACID Properties
Atomicity, Consistency, Isolation, Durability in transactions.
25
New cards
BASE Properties
Basically Available, Soft state, Eventual consistency for distributed systems.
26
New cards
Idempotency
Repeating a request yields the same result.
27
New cards
Statelessness
Each request contains all the information needed; no session stored on server.
28
New cards
Stateful Service
Service maintains session or state information across requests.
29
New cards
Rate Limiting
Restricting the number of requests a client can make.
30
New cards
Circuit Breaker Pattern
Stops calling a failing service to prevent cascading failures.
31
New cards
Bulkhead Isolation
Partitioning system resources so failure in one area doesn’t sink the whole system.
32
New cards
Retry with Backoff
Retrying failed operations after increasing delays.
33
New cards
Service Discovery
Automatic detection of service instances and their endpoints.
34
New cards
Load Shedding
Dropping requests gracefully under overload.
35
New cards
Graceful Degradation
System remains partially functional under stress.
36
New cards
Autoscaling
Automatically adding/removing compute resources based on demand.
37
New cards
Containerization
Packaging applications and dependencies in isolated units (Docker).
38
New cards
Orchestration
Managing multiple containers and services (Kubernetes).
39
New cards
Reverse DNS
Mapping IP addresses back to hostnames, useful in logging/security.
40
New cards
Health Checks
Probes that determine if a service is running properly.
41
New cards
Blue-Green Deployment
Two production environments to deploy with zero downtime.
42
New cards
Canary Deployment
Rolling out changes to a small subset of users first.
43
New cards
Feature Flag
Toggling features on/off without redeployment.
44
New cards
Data Partitioning
Splitting data logically to improve performance.
45
New cards
Load Testing
Simulating high traffic to test system performance.
46
New cards
Stress Testing
Testing beyond normal load to find breaking points.
47
New cards
Latency vs Throughput
Latency is response time; throughput is requests per second.
48
New cards
Cold Start
Initial latency when spinning up new resources.
49
New cards
Warm Cache
Cache already populated with frequently used data.
50
New cards
Cache Eviction Policies
LRU, LFU, FIFO for removing old cache items.
51
New cards
Database Index
Data structure speeding up queries at the cost of extra writes.
52
New cards
Query Optimization
Tweaking SQL or DB structure to run faster.
53
New cards
Connection Pooling
Reusing DB connections to reduce overhead.
54
New cards
Distributed Transactions
Coordinating a transaction across multiple systems.
55
New cards
Two-Phase Commit
Protocol ensuring distributed transaction consistency.
56
New cards
Saga Pattern
Coordinating distributed transactions via a series of compensating actions.
57
New cards
Event Sourcing
Storing changes as a sequence of events rather than state snapshots.
58
New cards
Command Query Responsibility Segregation (CQRS)
Separating read and write models for performance and clarity.
59
New cards
Write-Ahead Log
Logging changes before applying them to ensure durability.
60
New cards
Time-to-Live (TTL)
Automatic expiration of cache or data entries.
61
New cards
Data Lake
Centralized repository for raw data at scale.
62
New cards
Data Warehouse
Optimized DB for analytics and reporting.
63
New cards
Batch Processing
Processing large data sets at scheduled times.
64
New cards
Stream Processing
Real-time processing of data flows.
65
New cards
Backpressure
Mechanism to handle overwhelming data streams.
66
New cards
Rate Matching
Adjusting producer/consumer rates to avoid overload.
67
New cards
Security: Authentication
Verifying user identity (passwords, tokens).
68
New cards
Security: Authorization
Determining user’s permissions.
69
New cards
OAuth2
Delegated authorization standard.
70
New cards
JWT (JSON Web Token)
Compact token for secure information exchange.
71
New cards
API Keys
Simple method for authenticating API calls.
72
New cards
Input Validation
Checking incoming data to prevent injection attacks.
73
New cards
SQL Injection
Attack inserting malicious SQL into queries.
74
New cards
XSS (Cross-Site Scripting)
Injecting malicious scripts into web pages.
75
New cards
CSRF (Cross-Site Request Forgery)
Tricking authenticated users into unwanted actions.
76
New cards
HTTPS / TLS
Encrypted communication between client and server.
77
New cards
Rate Limiting for Security
Limiting brute force attacks or abuse.
78
New cards
Audit Logging
Recording key actions for security and debugging.
79
New cards
IAM (Identity and Access Management)
Framework for managing users and permissions.
80
New cards
Secrets Management
Securely storing API keys and credentials.
81
New cards
Zero Trust Architecture
No implicit trust, always verify.
82
New cards
Immutable Infrastructure
Don’t modify servers after deployment; redeploy instead.
83
New cards
Observability
Ability to measure internal states from outputs.
84
New cards
Monitoring
Tracking metrics like CPU, latency, errors.
85
New cards
Logging
Recording system events for debugging.
86
New cards
Tracing
Following a request through distributed systems.
87
New cards
Metrics Aggregation
Collecting system stats over time.
88
New cards
Alerting
Notifications when metrics cross thresholds.
89
New cards
Chaos Engineering
Deliberately breaking parts of system to test resilience.
90
New cards
Distributed Consensus
Protocols like Raft or Paxos for leader election.
91
New cards
Eventual Consistency
Updates propagate eventually across all nodes.
92
New cards
Strong Consistency
All reads see the most recent write.
93
New cards
Idempotent Retry APIs
Ensuring safe replays of requests.
94
New cards
Backoff Strategies
Increasing wait time between retries to reduce load.
95
New cards
Immutable Data Patterns
Avoid in-place modification for consistency.
96
New cards
Shadow Traffic
Sending real traffic to new systems without affecting users.
97
New cards
Service Mesh
Dedicated infrastructure layer for service-to-service communication.
98
New cards
Edge Computing
Processing closer to users to reduce latency.
99
New cards
Multi-Region Deployment
Hosting in multiple regions for resilience.
100
New cards
Disaster Recovery
Planning backups and failover for catastrophic failures.