Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
wwwanlingxiao
system-design-primer
Commits
5e9e21c6
Commit
5e9e21c6
authored
Feb 26, 2017
by
Donne Martin
Browse files
Add index section
parent
3bfedf42
Changes
1
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
5e9e21c6
...
...
@@ -78,3 +78,93 @@ Feel free to submit pull requests to help:
Content that needs some polishing is placed
[
under development
](
#under-development
)
.
Review the
[
Contributing Guidelines
](
https://github.com/donnemartin/awesome-aws/blob/master/CONTRIBUTING.md
)
.
## Index of system design topics
> Summaries of various system design topics, including pros and cons. **Everything is a trade-off**.
>
> Each section contains links to more in-depth resources.

*
[
System design topics: start here
](
#system-design-topics-start-here
)
*
[
Step 1: Review the scalability video lecture
](
#step-1-review-the-scalability-video-lecture
)
*
[
Step 2: Review the scalability article
](
#step-2-review-the-scalability-article
)
*
[
Next steps
](
#next-steps
)
*
[
Performance vs scalability
](
#performance-vs-scalability
)
*
[
Latency vs throughput
](
#latency-vs-throughput
)
*
[
Availability vs consistency
](
#availability-vs-consistency
)
*
[
CAP theorem
](
#cap-theorem
)
*
[
CP - consistency and partition tolerance
](
#cp-consistency-and-partition-tolerance
)
*
[
AP - availability and partition tolerance
](
#ap-availability-and-partition-tolerance
)
*
[
Consistency patterns
](
#consistency-patterns
)
*
[
Weak consistency
](
#weak-consistency
)
*
[
Eventual consistency
](
#eventual-consistency
)
*
[
Strong consistency
](
#strong-consistency
)
*
[
Availability patterns
](
#availability-patterns
)
*
[
Fail-over
](
#fail-over
)
*
[
Replication
](
#replication
)
*
[
Domain name system
](
#domain-name-system
)
*
[
Content delivery network
](
#content-delivery-network
)
*
[
Push CDNs
](
#push-cdns
)
*
[
Pull CDNs
](
#pull-cdns
)
*
[
Load balancer
](
#load-balancer
)
*
[
Active-passive
](
#active-passive
)
*
[
Active-active
](
#active-active
)
*
[
Layer 4 load balancing
](
#layer-4-load-balancing
)
*
[
Layer 7 load balancing
](
#layer-7-load-balancing
)
*
[
Horizontal scaling
](
#horizontal-scaling
)
*
[
Reverse proxy (web server)
](
#reverse-proxy-web-server
)
*
[
Load balancer vs reverse proxy
](
#load-balancer-vs-reverse-proxy
)
*
[
Application layer
](
#application-layer
)
*
[
Microservices
](
#microservices
)
*
[
Service discovery
](
#service-discovery
)
*
[
Database
](
#database
)
*
[
SQL
](
#sql
)
*
[
Relational database management system (RDBMS)
](
relational-database-management-system-rdbms
)
*
[
Scaling SQL
](
#scaling-sql
)
*
[
Master-slave replication
](
#master-slave-replication
)
*
[
Federation
](
#federation
)
*
[
Sharding
](
#sharding
)
*
[
Denormalization
](
#denormalization
)
*
[
SQL tuning
](
#sql-tuning
)
*
[
NoSQL
](
#nosql
)
*
[
Key-value store
](
#key-value-store
)
*
[
Document store
](
#document-store
)
*
[
Wide column store
](
#wide-column-store
)
*
[
Graph Database
](
#graph-database
)
*
[
SQL or NoSQL
](
#sql-or-nosql
)
*
[
Cache
](
#cache
)
*
[
Client caching
](
#client-caching
)
*
[
CDN caching
](
#cdn-caching
)
*
[
Web server caching
](
#web-server-caching
)
*
[
Database caching
](
#database-caching
)
*
[
Application caching
](
#application-caching
)
*
[
Caching at the database query level
](
#caching-at-the-database-query-level
)
*
[
Caching at the object level
](
#caching-at-the-object-level
)
*
[
When to update the cache
](
#when-to-update-the-cache
)
*
[
Cache-aside
](
#cache-aside
)
*
[
Write-through
](
#write-through
)
*
[
Write-behind (write-back)
](
#write-behind-write-back
)
*
[
Refresh-ahead
](
#refresh-ahead
)
*
[
Asynchronism
](
#asynchronism
)
*
[
Message queues
](
#message-queues
)
*
[
Task queues
](
#task-queues
)
*
[
Back pressure
](
#back-pressure
)
*
[
Communication
](
#communication
)
*
[
Transmission control protocol (TCP)
](
#transmission-control-protocol-tcp
)
*
[
User datagram protocol (UDP)
](
#user-datagram-protocol-udp
)
*
[
Remote procedure call (RPC)
](
#remote-procedure-call-rpc
)
*
[
Representational state transfer (REST)
](
#representational-state-transfer-rest
)
*
[
Security
](
#security
)
*
[
Appendix
](
#appendix
)
*
[
Powers of two table
](
#powers-of-two-table
)
*
[
Latency numbers every programmer should know
](
#latency-numbers-every-programmer-should-know
)
*
[
Under development
](
#under-development
)
*
[
Distributed computing
](
#distributed-computing
)
*
[
Consistent hashing
](
#consistent-hashing
)
*
[
Scatter gather
](
#scatter-gather
)
*
[
Contribute
](
#contributing
)
*
[
Credits
](
#credits
)
*
[
Contact info
](
#contact-info
)
*
[
License
](
#license
)
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment