add weigh params

pull/519/head
Vu 2021-03-27 17:16:09 +07:00
parent f9580a0770
commit 564ad07f14
37 changed files with 65 additions and 14 deletions

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 10
+++
# Performance vs scalability

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 20
+++
# Latency vs throughput

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 30
+++
# Availability vs consistency

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 40
+++
# Consistency patterns

View File

@ -1,7 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 120
weight = 50:weight
+++
# Availability patterns

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 60
+++
# Domain name system
@ -8,6 +9,7 @@ isdraft = False
## Introduction Domain Name System
![](https://camo.githubusercontent.com/fae27d1291ed38dd120595d692eacd2505cd3a9c/687474703a2f2f692e696d6775722e636f6d2f494f794c6a34692e6a7067)
[Source: DNS security presentation](http://www.slideshare.net/srikrupa5/dns-security-presentation-issa)
A Domain Name System (DNS) translates a domain name such as [www.example.com](http://www.example.com/) to an IP address.

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 70
+++

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 80
+++
# Load balancer

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 90
+++
# Reverse proxy (web server)

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 100
+++
# Application layer

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 110:weight
+++

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 111
+++
# Federation

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 112
+++
# Denormalization

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 113
+++
# Sharding

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 114
+++
# SQL tuning

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 120
+++
# NoSQL

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 121
+++
# Key-value store

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 122
+++
# Document store

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 123
+++
# Wide column store

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 124
+++
# Graph database

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 130
+++
# SQL or NoSQL

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 140
+++

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 141
+++

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 142
+++
# Database caching, what to cache

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 143
+++
# Cache-aside

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 144
+++
# Write-through

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 145
+++
# Write-behind (write-back)

View File

@ -1,3 +1,9 @@
+++
noatcards = True
isdraft = False
weight = 146
+++
# Refresh-ahead
## Introduction

View File

@ -1,7 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 100
weight = 150
+++
# Asynchronism

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 161
+++
# Hypertext transfer protocol (HTTP)

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 162
+++
# Transmission control protocol (TCP)

View File

@ -1,6 +1,7 @@
+++
noatcards = True
isdraft = False
weight = 163
+++
# User datagram protocol (UDP)

View File

@ -1,3 +1,8 @@
+++
noatcards = True
isdraft = False
weight = 164
+++
# Remote procedure call (RPC)
## Remote procedure call introduction

View File

@ -1,4 +1,8 @@
+++ noatcards = True isdraft = False +++
+++
noatcards = True
isdraft = False
weight = 165
+++
# Representational state transfer (REST)

View File

@ -1,3 +1,8 @@
+++
noatcards = True
isdraft = False
weight = 170
+++
Security
--------
---

View File

@ -1,3 +1,9 @@
+++
noatcards = True
isdraft = False
weight = 180
+++
# Appendix
## Powers of two table
@ -21,7 +27,8 @@ Power Exact Value Approx Value Bytes
## Latency numbers every programmer should know
---
```
Latency Comparison Numbers
--------------------------
L1 cache reference 0.5 ns
@ -45,7 +52,7 @@ Power Exact Value Approx Value Bytes
1 ns = 10^-9 seconds
1 us = 10^-6 seconds = 1,000 ns
1 ms = 10^-3 seconds = 1,000 us = 1,000,000 ns
```
Handy metrics based on numbers above:
@ -56,18 +63,17 @@ Handy metrics based on numbers above:
- 6-7 world-wide round trips per second
- 2,000 round trips per second within a data center
#### [](https://github.com/donnemartin/system-design-primer#latency-numbers-visualized) Latency numbers visualized
### Latency numbers visualized
[![](https://camo.githubusercontent.com/77f72259e1eb58596b564d1ad823af1853bc60a3/687474703a2f2f692e696d6775722e636f6d2f6b307431652e706e67) ](https://camo.githubusercontent.com/77f72259e1eb58596b564d1ad823af1853bc60a3/687474703a2f2f692e696d6775722e636f6d2f6b307431652e706e67)
![](https://camo.githubusercontent.com/77f72259e1eb58596b564d1ad823af1853bc60a3/687474703a2f2f692e696d6775722e636f6d2f6b307431652e706e67)
#### [](https://github.com/donnemartin/system-design-primer#sources-and-further-reading-14) Source(s) and further reading
## Latency numbers: Source(s) and further reading for
- [Latency numbers every programmer should know - 1](https://gist.github.com/jboner/2841832)
- [Latency numbers every programmer should know - 2](https://gist.github.com/hellerbarde/2843375)
- [Designs, lessons, and advice from building large distributed systems](http://www.cs.cornell.edu/projects/ladis2009/talks/dean-keynote-ladis2009.pdf)
- [Software Engineering Advice from Building Large-Scale Distributed Systems](https://static.googleusercontent.com/media/research.google.com/en//people/jeff/stanford-295-talk.pdf)
## Introduction of base 62
- Encodes to `[a-zA-Z0-9]` which works well for urls, eliminating the need for escaping special characters
- Only one hash result for the original input and and the operation is deterministic (no randomness involved)

View File

@ -1,5 +0,0 @@
+++
noatcards = True
isdraft = False
+++