Discussion - Topic 4 System Design.

Lancez-Vous. C'est gratuit
ou s'inscrire avec votre adresse e-mail
Discussion - Topic 4 System Design. par Mind Map: Discussion - Topic 4 System Design.

1. Vertical Scaling

1.1. Adding resources (RAM, CPU, etc.) to a single server to handle more requests.

2. Horizontal Scaling

2.1. Adding replicas (servers) to handle subsets of requests, allowing for almost infinite scaling and redundancy.

3. Load Balancers

3.1. A server (reverse proxy) that directs incoming requests to the appropriate server, using algorithms like round-robin or hashing the incoming request ID.

4. Caching

4.1. Creating copies of data so that it can be refetched faster in the future.

5. IP Address

5.1. Every computer is assigned an IP address which uniquely identifies a device on a network.

6. TCP/IP

6.1. The protocol suite used to send data over the internet, including TCP (reliable protocol for sending data in packets) and UDP.

7. API Patterns

7.1. Common patterns for designing APIs, including CRUD (create, read, update, delete) operations and REST (representational state transfer) principles.

8. Databases

8.1. Different types of databases (relational, NoSQL, key-value stores) and how they handle data storage and retrieval.

9. Sharding

9.1. Dividing large data sets into smaller, more manageable parts (shards) and distributing them across multiple servers.

10. CAP Theorem

10.1. A theory that states that distributed systems cannot simultaneously provide all three guarantees of consistency, availability, and partition tolerance.

11. Consistency Models

11.1. Strong (linearizability), weak (sequential consistency), and eventual consistency models for handling concurrent data access.

12. Message Queues

12.1. A type of asynchronous communication between distributed systems, where messages are stored until they can be processed.