【系统设计】系统设计常见的33个概念
1 Caching Stores data so that future requests of data retrieval can be faster
2 Message Queue Provides an asynchronous communications protocol,
3 Data Partition & Sharding Break up a big data volume into many smaller parts
4 DB Indexing Create indexes on multiple columns to speed up table look up
5 DB replication Duplicate data to increase service availability
6 CAP: Consistency/Availability/Partition A distributed database system can only have 2 of the 3
7 DB: SQL & NoSQL Relational databases and non-relational databases
8 Concurrency & Communication
9 Pessimistic And Optimistic Locking
10 Consistency Module weak consistency, eventual consistency, strong consistency
11 Conflict resolution Quorum, vector lock, reconcile on read/write, CRDTs
12 B+ Tree
13 Networking: HTTP
14 Networking: TCP/UDP
15 Pull vs Push model
16 Garbage Collection
17 Memory Management
18 Heartbeats
19 Self Protection API Rate limit, Circuit breaker, bulkhead, throttling
20 Filesystem
21 API: RPC vs gRPC vs REST
22 Load balancer
23 Scale up vs Scale out Vertical scaling and Horizontal scaling
24 API Design
25 Session management
26 Networking: TCP vs UDP
27 Consistency patterns Weak consistency, Eventual consistency, Strong consistency
28 Availability patterns Fail-over vs Replication
29 CDN – Content Delivery Network Edge caching
30 Monitoring
31 Security
32 Networking: DNS
33 Linux signals

浙公网安备 33010602011771号