yeomko22 / TIL

Today I learned
1 stars 0 forks source link

algo expert #80

Open yeomko22 opened 3 years ago

yeomko22 commented 3 years ago

Client Sever Architecture

; <<>> DiG 9.10.6 <<>> algoexpert.io ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62516 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;algoexpert.io. IN A

;; ANSWER SECTION: algoexpert.io. 3600 IN A 35.202.194.70

;; Query time: 61 msec ;; SERVER: 61.41.153.2#53(61.41.153.2) ;; WHEN: Wed Jun 23 16:41:00 KST 2021 ;; MSG SIZE rcvd: 58


- 서버는 특정 포트에서 요청이 들어오기를 기다린다. 포트는 65535개를 사용 가능하다.

~~~bash
# 로컬 영역에서 TCP나 UDP 통신을 수신하기 위해 포트를 개방
$ nc -l 8021

# 로컬 컴퓨터의 8021 포트로 접속, TCP 통신을 수행
$ nc 127.0.0.1 8021
yeomko22 commented 3 years ago

Network Protocol

IP

TCP

HTTP

스크린샷 2021-06-23 오후 6 24 32

yeomko22 commented 3 years ago

Storage

Database

yeomko22 commented 3 years ago

Latency & Throughput

SLA / SLO

스크린샷 2021-06-24 오후 2 15 28

Nines

Redundancy

yeomko22 commented 3 years ago

Caching

스크린샷 2021-06-24 오후 2 28 10

스크린샷 2021-06-24 오후 2 31 58

캐싱 예시

write through cache

write back cache

cache stale

Eviction Policy

CDN

yeomko22 commented 3 years ago

Load Balancer

Hardware / Software load balancer

Server Selection Strategy

Nginx

yeomko22 commented 3 years ago

Distributed Hash Table (DHT)

스크린샷 2021-06-29 오후 1 32 15

Rendezvous Hashing

Consistent Hashing

yeomko22 commented 3 years ago

KV store

yeomko22 commented 3 years ago

Specialized Storage Paradigm

Blob Store

TIme Series DB

Graph DB

yeomko22 commented 3 years ago

Replication and Sharding

Replication

Sharding