โ ๊ฐ์ธ ๊ณต๋ถ์ฉ์ผ๋ก ์์ฑํ ๊ธ์ ๋๋ค :)
์์ฒญํ ํ์ผ
์๋ฒ์ ์์ฒญํ ํ์ผ๋ก camera.glb (11.5MB)์ 3d ๋ชจ๋ธ๋ง ํ์ผ์ ๋ถ๋ฌ์๋ค. ๋ชจ๋ธ๋ง์ ๋๋ฆ๋๋ก ๋ํ ์ผ์ด ๋ง์ ๊ฝค ํฐ ์ฉ๋์ ํ์ผ์ด๋ค.
nodejs ์๋ฒ์ static ์ผ๋ก ๋ถ๋ฌ์ค๋ ๋ฐฉ๋ฒ๊ณผ, cdn์ ๊ฑฐ์ณ์ ๋ถ๋ฌ์ค๋ ๋ฐฉ๋ฒ์ ์๋์ฐจ๋ฅผ ๋น๊ตํ๋ คํ๋ค.
*3d ํ์ผ์ babylon.js๋ก ๋๋๋งํ๋ ๊ฒฝ์ฐ load๊ฐ ์ด๋ป๊ฒ ์ด๋ค์ง๋์ง๋ ํ์ธํด๋ด์ผํจ. → ํ๋ก ํธ ๊ฐ๋ฐ์๋ถ๊ป ์์ฒญ๋๋ ค์ผ๊ฒ ๋ค.
๋ฐ๋น๋ก ์๋ํฐ์์ https๋ก ํ์ผ์ ๋ถ๋ฌ์ค๋ ์ฝ๋๋ฅผ ์ฌ์ฉํด ํ ์คํธ ํด๋ณด์๋ค.
CDN์ด ๋ฌด์์ด๋
CDN์ ATM๊ณผ ๊ฐ๋ค๊ณ ๋ด๋ ๋๋ค.
CDN์ ์ค๋ช ํ๋ ์ต๊ณ ์ ๋ฌธ์ฅ์ธ๋ฏ.
์ผ๋ฐ ๋๋ฉ์ธ์ผ๋ก ์์ฒญ์ ํ๋ฉด, ์๋ณธ ํ์ผ์ด ์๋ ์๋ฒ์ ์์ฒญ์ ํ๋๋ฐ, ๋ง์ฝ ์๋ณธ ์๋ฒ๊ฐ ๋ฏธ๊ตญ์ ์๊ณ ์ฌ์ฉ์๊ฐ ํ๊ตญ์์ ์ด๋ฏธ์ง ํ์ผ์ ์์ฒญํ๋ฉด ์๊ฐ์ด ๊ฝค ๊ฑธ๋ฆฌ๊ฒ ๋๋ค. ์ด๋ ์ด๋ฌํ "๋๋ฆฐ ์ ์ก"์ ๋ฐฉ์งํ๊ธฐ ์ํด CDN์ ์ฌ์ฉํ๋ค. ์ฌ์ฉ์๊ฐ Requestํ๋ ์์น์ ๊ฐ๊น์ด ํ๋ก์ ์๋ฒ์ ์์ฒญํ๋ ๋ฐฉ๋ฒ์ด CDN์ด๋ค. ๊ฐ์ฅ ๊ฐ๊น์ด ATM(์ฌ๊ธฐ์ CDN)๊ธฐ๊ธฐ๋ฅผ ์ฐพ์๊ฐ ๋ ์ด ํ์ผ ์ฃผ์ธ์ ๋ก๋ก ์์ฒญํ๋ ๋ฐฉ์์ด๋ผ๊ณ ์ดํดํ๋ฉด ๋๋ค.
CDN์ด๋ผ๊ณ ๋ง๋ฅ ์ข์ ๊ฒ์ ์๋๋ผ ํ๋ค. ํน์ ์ง์ญ์ด๋, ๊ตญ๊ฐ์ ์ ๊ณตํ ์๋น์ค๋ผ๋ฉด CDN์ ์ ์ฉํ ์ ๋ถํ์ํ ์บ์๋ฅผ ๋ ๋ฆฌ๊ณ , ์๋ฏธ์๋ ํ๋ก์ ์๋ฒ๋ง ๋์ด๋๋ ๊ฑฐ๋ผ ๊ตณ์ด ๊ตณ์ด ๋ผ๊ณ ...
→ ์ด ๋ถ๋ถ์ ์ข๋ ์์๋ด์ผ๊ฒ ๋ค. ์์ฒญํ๋ ํ์ผ์ด ํด ๊ฒฝ์ฐ, ํด๋ผ์ด์ธํธ ๋ก๋ ์๋๋ฅผ ์ค์ด๊ธฐ์ํ ์ ์ฑ ์ผ๋ก ํ์ฉํ ์ ์๋์ง ๋ฉํ ๋๊ป ์ฌ์ญค๋ด์ผ์ง.
https://www.akamai.com/ko/our-thinking/cdn/what-is-a-cdn
https://library.gabia.com/contents/infrahosting/8985/
CDN ์์ด static ํ์ผ๋ก ๋ถ๋ฌ์จ ๊ฒฝ์ฐ
CDN ์์ด ์์ฒญํ ๊ฒฝ์ฐ | |
Resource Scheduling / Queueing | 1.17ms |
Connection Start / Stalled | 1.25ms |
Request sent | 42 µm |
waiting (TTFB) | 10.88ms |
Content Download | 309.71ms |
Total | 323.04 |
CDN์ผ๋ก ํ์ผ๋ก ๋ถ๋ฌ์จ ๊ฒฝ์ฐ
CDN ์ผ๋ก ์์ฒญํ ๊ฒฝ์ฐ | |
Resource Scheduling / Queueing | 1.96ms |
Connection Start / Stalled | 1.75ms |
Request sent | 0.12ms |
waiting (TTFB) | 13.17ms |
Content Download | 244.25ms |
Total | 361.25 ms |
ํ๋์ ๋น๊ตํ๊ธฐ
CDN (x) | CDN (o) | |
Queued at | 891.38 ms | 731.54 ms |
Started at | 892.54 ms | 733.50 ms |
Resource Scheduling / Queueing | 1.17 ms | 1.96 ms |
Connection Start / Stalled | 1.25 ms | 1.75 ms |
Request sent | 42 µm | 0.12 ms |
waiting (TTFB) | 10.88 ms | 13.17 ms |
Content Download | 309.71 ms | 244.25 ms |
Total | 323.04 ms | 261.25 ms |
์คํ๋ ค ํ์์ด๋, ๋ฆฌํ์คํธ ๋ณด๋ด๋ ์๊ฐ์ ์กฐ๊ธ ๋ ๊ฑธ๋ ธ๊ณ , Content Download์์ ์๊ฐ์ ์ค์ผ ์ ์์๋ค.
์ง๊ธ์ 11MB๋ฐ์ ์ํ์ง๋ง, ๋งต์ด ์ปค์ง๋ฉด ์ปค์ง์๋ก ์ฉ๋์ ์ฅ๋ดํ ์ ์๊ธฐ ๋๋ฌธ์ cdn์ผ๋ก ์์ฒญํ๋ ํธ์ด ์ข๊ฒ ๋ค.
Network Timing ํญ ํญ๋ชฉ ์ค๋ช
- Queued at : ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ์ผ ์๊ฐ๋ถํฐ ํ์ ์์ด๋๋ฐ ๊น์ง ๊ฑธ๋ฆฌ๋ ์๊ฐ
- Started at : ๊ฐ๋ฐ์ ๋๊ตฌ๋ฅผ ์ผ ์๊ฐ๋ถํฐ request ๋ฅผ ๋ณด๋ด๋๋ฐ ๊น์ง ๊ฑธ๋ฆฌ๋ ์๊ฐ
- Queueing : ๊ตฌ๋ฌธ ๋ถ์ํ ์์ ์์ ํ์ ๋ฃ๋๋ฐ ๊ทธ๊ฒ ์ ์ฌ ๋์ด ์๋ ์๊ฐ (?)
- Stalled : ํ์์ request๋ฅผ ๋ณด๋ด๋๋ฐ ๊ทธ๊ฒ ์ ์ง๋์ด ์๋ ์๊ฐ
- Proxy negotiation : ๋ธ๋ผ์ฐ์ ๊ฐ ํ๋ก์ ์๋ฒ๋ก ์์ฒญ์ ๋ณด๋ด๋๋ฐ๊น์ง ๊ฑธ๋ฆฌ๋ ์๊ฐ
- Request sent : request๋ฅผ ๋ณด๋ด๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ
- Waiting (TTFB) : response์ ์ฒซ ๋ฒ์งธ ๋ฐ์ดํธ๊ฐ ๋๋ฌํ๋๋ฐ๊น์ง ๊ธฐ๋ค๋ฆฐ ์๊ฐ (Time To First Byte)
- Content Download : content๊ฐ ๋ค์ด๋ก๋๊ฐ ๋๋๋ฐ ๊น์ง ๊ธฐ๋ค๋ฆฐ ์๊ฐ. ์์ ์์ ์ response ์์ ์์ , ์ข ๋ฃ ์์ ์ response ์ข ๋ฃ์์ ์ด๋ผ ์๊ฐํด๋ ๋ฌด๋ฐฉ
- total = Explanation
โผ ์๋ณธ ๋ธ๋ก๊ทธ
'๐์ฝ๋ฉ ๊ณต๋ถ > ์ฝ๋ฉ๊ณต๋ถ ์ด๋ชจ์ ๋ชจ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
CS ) ssh, sh, bash ๋ ๋ญ๊น? (0) | 2021.09.25 |
---|---|
CS) ์๋ฒ OS ์์๋ณด๊ธฐ, CentOS, Linux, Ubuntu, Window (0) | 2021.09.05 |
Node.js ) Storage ์์ ์ฌ์ฉํ์ง ์๋ ๋๋ฏธ ํ์ผ๋ค ์ ๋ฆฌํ๊ธฐ -- ft.์๋ฒ ์ค์ผ์ค๋ง (0) | 2021.08.22 |
Node.js ) ํ์ด์ง ์ฒ๋ฆฌ 1 - offset, limit ๋ฐฉ์ (0) | 2021.07.24 |
React Router ) Link ๊ธฐ๋ฅ์ ํจ์๋ก ๋นผ๊ธฐ, history์ location (0) | 2021.07.11 |