์ฌ์ดํธ ์๋ ์ต์ ํ๋ฅผ ์ํ ๊ฑฐ์ ๋ชจ๋ ๊ธฐ์ฌ๋ ๋๊ตฌ์๋ "CDN ์ฌ์ฉ"์ด๋ผ๋ ์ ๋นํ ์กฐํญ์ด ์์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก CDN์ ์ฝํ ์ธ ์ ์ก ๋คํธ์ํฌ ๋๋ ์ฝํ ์ธ ์ ์ก ๋คํธ์ํฌ์ ๋๋ค. Method Lab์์๋ ์ด ์ฃผ์ ์ ๋ํ ๊ณ ๊ฐ์ ์ง๋ฌธ์ ์์ฃผ ์ ํ๋๋ฐ, ๊ทธ ์ค ์ผ๋ถ๋ ์์ฒด CDN์ ํ์ฑํํฉ๋๋ค. ์ด ๋ฌธ์์ ๋ชฉ์ ์ ์ฌ์ดํธ ๋ก๋ฉ ์๋ ์ธก๋ฉด์์ CDN์ด ๋ฌด์์ ์ ๊ณตํ ์ ์๋์ง, ์ด๋ค ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋์ง, ์ด๋ค ๊ฒฝ์ฐ CDN ์ฌ์ฉ์ด ์ ๋นํ์ง๋ฅผ ์ดํดํ๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ฆผ์ ๋๊ทธ๋ผ๋ฏธ๋ก ํ์๋ ์ง์ฐ์ CDN ์ฌ์ฉ์ผ๋ก ์ธํด ๋ฐ์ํฉ๋๋ค.
์ญ์ฌ์ ๋นํธ
๋ง์ ๊ธฐ์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก CDN๋ ํ์์ ๋ฐ๋ผ ๋ฑ์ฅํ์ต๋๋ค. ์ธํฐ๋ท ์ฌ์ฉ์ ๊ฐ์ ์ธํฐ๋ท ์ฑ๋์ด ๋ฐ์ ํ๋ฉด์ ์จ๋ผ์ธ ๋น๋์ค ์๋น์ค๊ฐ ๋ฑ์ฅํ์ต๋๋ค. ๋น์ฐํ ๋น๋์ค ์ฝํ ์ธ ์๋ ์ผ๋ฐ ์น์ฌ์ดํธ ์ฝํ ์ธ (์ฌ์ง, ํ ์คํธ, CSS ๋๋ JS ์ฝ๋)์ ๋นํด ํจ์ฌ ๋ ๋ง์ ๋์ญํญ์ด ํ์ํฉ๋๋ค.
ํ๋์ ์๋ฒ์์ ์ฌ๋ฌ ํด๋ผ์ด์ธํธ์ ๋ณ๋ ฌ๋ก ๋น๋์ค ์คํธ๋ฆผ์ ๋ธ๋ก๋์บ์คํธํ๋ ค๊ณ ํ๋ฉด ์๋ฒ์ ์ธํฐ๋ท ์ฑ๋์ด ๋ณ๋ชฉ ํ์์ ์ผ์ผํฌ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์์ฒ ๊ฐ์ ์ค๋ ๋๋ง์ผ๋ก๋ ์ผ๋ฐ์ ์ธ ์๋ฒ ์ฑ๋์ ๋ง์ ์ ์์ต๋๋ค. ๋ฌผ๋ก ๋ค๋ฅธ ๋ฆฌ์์ค ์ ํ์ด ์์ ์ ์์ง๋ง ์ง๊ธ์ ์ค์ํ์ง ์์ต๋๋ค. ์๋ฒ ์ฑ๋์ ํ์ฅํ๋ ๋ฐ์๋ ๋น์ฉ์ด ๋๋ฌด ๋ง์ด ๋ค๊ณ (๋๋ก๋ ๋ถ๊ฐ๋ฅํ ์๋ ์์) ๋น์ค์ฉ์ ์ด๋ผ๋ ์ ๋ ์ค์ํฉ๋๋ค. ๋ฐฉ์ก ์ค ์ฑ๋์ ๋ถํ๋ ์ฃผ๊ธฐ์ ์ ๋๋ค.
๊ฐ๋ณ ์๋ฒ์ ์ฑ๋ ์ ํ ๋ฌธ์ ๋ CDN์ ํตํด ์๋ฒฝํ๊ฒ ํด๊ฒฐ๋ฉ๋๋ค. ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ์ง์ ์ฐ๊ฒฐํ์ง ์๊ณ CDN ๋คํธ์ํฌ์ ๋ ธ๋์ ์ฐ๊ฒฐํฉ๋๋ค. ์ด์์ ์ธ ์ํฉ์์๋ ์๋ฒ๊ฐ ํ๋์ ์คํธ๋ฆผ์ CDN ๋ ธ๋๋ก ๋ณด๋ด๊ณ ๋คํธ์ํฌ๋ ์์ฒด ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ด ์คํธ๋ฆผ์ ๋ง์ ์ฌ์ฉ์์๊ฒ ์ ๋ฌํฉ๋๋ค. ๊ฒฝ์ ์ ๊ด์ ์์ ์ฐ๋ฆฌ๋ ์ค์ ๋ก ์๋น๋ ๋ฆฌ์์ค(๋์ญํญ์ด๋ ํธ๋ํฝ์ผ ์ ์์)์ ๋ํด์๋ง ๋น์ฉ์ ์ง๋ถํ๊ณ ์๋น์ค์ ๋ฐ์ด๋ ํ์ฅ์ฑ์ ์ป์ต๋๋ค. CDN์ ์ฌ์ฉํ์ฌ ๋์ฉ๋ ์ฝํ ์ธ ๋ฅผ ์ ๋ฌํ๋ ๊ฒ์ ์์ ํ ์ ๋นํ๊ณ ๋ ผ๋ฆฌ์ ์ ๋๋ค. ์ด ๋ถ์ผ์ ๊ฐ์ฅ ํฐ ํ๋ ์ด์ด(์: Netflix)๊ฐ ๋๊ท๋ชจ ์์ฉ CDN(Akamai, Cloudflare, Fastly ๋ฑ)์ ์ฌ์ฉํ๋ ๋์ ์์ฒด CDN์ ๊ตฌ์ถํ๊ณ ์๋ค๋ ์ ์ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค.
์น์ด ๋ฐ์ ํจ์ ๋ฐ๋ผ ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ฒด๋ ๋์ฑ ๋ณต์กํด์ง๊ณ ๋ณต์กํด์ก์ต๋๋ค. ๋ก๋ฉ ์๋ ๋ฌธ์ ๊ฐ ๋๋๋์์ต๋๋ค. ์น ์ฌ์ดํธ ์๋๋ฅผ ์ข์ํ๋ ์ฌ๋๋ค์ ์น ์ฌ์ดํธ ๋ก๋ ์๋๋ฅผ ๋๋ฆฌ๊ฒ ๋ง๋๋ ๋ช ๊ฐ์ง ์ฃผ์ ๋ฌธ์ ๋ฅผ ๋น ๋ฅด๊ฒ ์๋ณํ์ต๋๋ค. ๊ทธ ์ค ํ๋๋ ๋คํธ์ํฌ ์ง์ฐ(RTT - ์๋ณต ์๊ฐ ๋๋ ํ ์๊ฐ)์ด์์ต๋๋ค. ์ง์ฐ์ TCP ์ฐ๊ฒฐ ์ค์ , TLS ์ธ์ ์์, ๊ฐ ๊ฐ๋ณ ๋ฆฌ์์ค(์ด๋ฏธ์ง, JS ํ์ผ, HTML ๋ฌธ์ ๋ฑ) ๋ก๋ ๋ฑ ์น ์ฌ์ดํธ ๋ก๋ฉ์ ๋ง์ ํ๋ก์ธ์ค์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค.
HTTP/1.1 ํ๋กํ ์ฝ(SPDY, QUIC ๋ฐ HTTP/2๊ฐ ์ถํํ๊ธฐ ์ ์๋ ์ด๊ฒ์ด ์ ์ผํ ์ต์ ์ด์์ต๋๋ค)์ ์ฌ์ฉํ ๋ ๋ธ๋ผ์ฐ์ ๊ฐ ํ๋์ ํธ์คํธ์ ๋ํด 6๊ฐ ์ดํ์ TCP ์ฐ๊ฒฐ์ ์ด ์ ์๋ค๋ ์ฌ์ค๋ก ์ธํด ๋ฌธ์ ๊ฐ ๋์ฑ ์ ํ๋์์ต๋๋ค. ์ด๋ก ์ธํด ์ฐ๊ฒฐ์ด ์ค๋จ๋๊ณ ์ฑ๋ ๋์ญํญ์ด ๋นํจ์จ์ ์ผ๋ก ์ฌ์ฉ๋์์ต๋๋ค. ๋ฌธ์ ๋ ์ฐ๊ฒฐ ์ ์ ํ์ ๊ทน๋ณตํ๊ธฐ ์ํด ์ถ๊ฐ ํธ์คํธ๋ฅผ ์์ฑํ๋ ๋๋ฉ์ธ ์ค๋ฉ์ ํตํด ๋ถ๋ถ์ ์ผ๋ก ํด๊ฒฐ๋์์ต๋๋ค.
์ฌ๊ธฐ์์ CDN์ ๋ ๋ฒ์งธ ๊ธฐ๋ฅ์ด ๋ํ๋๋ ๊ณณ์ ๋๋ค. ์ฆ, ๋ง์ ์์ ํฌ์ธํธ์ ์ฌ์ฉ์์ ๋ํ ๋ ธ๋์ ๊ทผ์ ์ฑ์ผ๋ก ์ธํด ๋๊ธฐ ์๊ฐ(RTT)์ด ์ค์ด๋ญ๋๋ค. ์ฌ๊ธฐ์ ๊ฑฐ๋ฆฌ๊ฐ ๊ฒฐ์ ์ ์ธ ์ญํ ์ ํฉ๋๋ค. ๋น์ ์๋๋ ์ ํ๋์ด ์์ต๋๋ค(๊ด์ฌ์ ์์๋ ์ฝ 200km/์ด). ์ฆ, 000km๋ฅผ ์ด๋ํ ๋๋ง๋ค 1000ms์ ์ง์ฐ ๋๋ RTT์ 5ms๊ฐ ์ถ๊ฐ๋ฉ๋๋ค. ์ด๋ ์ค๊ฐ ์ฅ๋น์์๋ ์ง์ฐ์ด ๋ฐ์ํ๋ฏ๋ก ์ ์ก์ ํ์ํ ์ต์ ์๊ฐ์ ๋๋ค. CDN์ ์ผ๋ฐ์ ์ผ๋ก ์๋ฒ์์ ๊ฐ์ฒด๋ฅผ ์บ์ํ๋ ๋ฐฉ๋ฒ์ ์๊ณ ์์ผ๋ฏ๋ก CDN์ ํตํด ์ด๋ฌํ ๊ฐ์ฒด๋ฅผ ๋ก๋ํ๋ฉด ์ด์ ์ ์ป์ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ํ์ํ ์กฐ๊ฑด: ์บ์์ ๊ฐ์ฒด๊ฐ ์กด์ฌํ๋์ง, ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ(์๋ณธ ์๋ฒ)์ ๋น๊ตํ์ฌ ์ฌ์ฉ์์ ๋ํ CDN ์ง์ ์ ๊ทผ์ ์ฑ. CDN ๋ ธ๋์ ์ง๋ฆฌ์ ๊ทผ์ ์ฑ์ด ๋ฎ์ ๋๊ธฐ ์๊ฐ์ ๋ณด์ฅํ์ง ์๋๋ค๋ ์ ์ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ํด๋ผ์ด์ธํธ์ CDN ๊ฐ์ ๋ผ์ฐํ ์ ํด๋ผ์ด์ธํธ๊ฐ ๋ค๋ฅธ ๊ตญ๊ฐ, ๊ฐ๋ฅํ๋ฉด ๋ค๋ฅธ ๋๋ฅ์ ํธ์คํธ์ ์ฐ๊ฒฐํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌ์ถ๋ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์ ํต์ ์ฌ์ ์์ CDN ์๋น์ค(ํผ์ด๋ง, ์ฐ๊ฒฐ, IX ์ฐธ์ฌ ๋ฑ) ๊ฐ์ ๊ด๊ณ์ CDN ์์ฒด์ ํธ๋ํฝ ๋ผ์ฐํ ์ ์ฑ ์ด ์์ฉํฉ๋๋ค. ์๋ฅผ ๋ค์ด, Cloudflare๋ ๋ ๊ฐ์ง ์ด๊ธฐ ๊ณํ(๋ฌด๋ฃ ๋ฐ ์ ๊ฐ)์ ์ฌ์ฉํ ๋ ๊ฐ์ฅ ๊ฐ๊น์ด ํธ์คํธ๋ก๋ถํฐ์ ์ฝํ ์ธ ์ ๋ฌ์ ๋ณด์ฅํ์ง ์์ต๋๋ค. ํธ์คํธ๋ ์ต์ ๋น์ฉ์ ๋ฌ์ฑํ๋๋ก ์ ํ๋ฉ๋๋ค.
๋ง์ ์ ๋์ ์ธ ์ธํฐ๋ท ๊ธฐ์ ๋ค์ด ๋ก๋ฉ ์๋์ ์น์ฌ์ดํธ ์ฑ๋ฅ์ด๋ผ๋ ์ฃผ์ ๋ก ๋์ค์ ๊ด์ฌ(์น ๊ฐ๋ฐ์ ๋ฐ ์๋น์ค ์์ ์)์ ๋๊ณ ์์ต๋๋ค. ์ด๋ฌํ ํ์ฌ ์ค์๋ Yahoo(Yslow ๋๊ตฌ), AOL(WebPageTest) ๋ฐ Google(Page Speed โโโโInsights ์๋น์ค)์ด ์์ผ๋ฉฐ ์ฌ์ดํธ ์๋ ํฅ์์ ์ํ ์์ฒด ๊ถ์ฅ ์ฌํญ์ ๊ฐ๋ฐํ๊ณ ์์ต๋๋ค(์ฃผ๋ก ํด๋ผ์ด์ธํธ ์ต์ ํ์ ๊ด๋ จ๋จ). ๋์ค์ ์น์ฌ์ดํธ ์๋๋ฅผ ๋์ด๋ ๋ฐฉ๋ฒ์ ๋ํ ํ๋ ์ ๊ณตํ๋ ์๋ก์ด ์น์ฌ์ดํธ ์๋ ํ ์คํธ ๋๊ตฌ๊ฐ ๋ฑ์ฅํฉ๋๋ค. ์ด๋ฌํ ๊ฐ ์๋น์ค ๋๋ ํ๋ฌ๊ทธ์ธ์๋ "CDN ์ฌ์ฉ"์ด๋ผ๋ ์ผ๊ด๋ ๊ถ์ฅ ์ฌํญ์ด ์์ต๋๋ค. ๋คํธ์ํฌ ์ง์ฐ ์๊ฐ์ ๊ฐ์๋ ์ผ๋ฐ์ ์ผ๋ก CDN์ ํจ๊ณผ์ ๋ํ ์ค๋ช ์ผ๋ก ์ธ์ฉ๋ฉ๋๋ค. ๋ถํํ๊ฒ๋ ๋ชจ๋ ์ฌ๋์ด CDN์ ๊ฐ์ ํจ๊ณผ๊ฐ ์ด๋ป๊ฒ ๋ฌ์ฑ๋๊ณ ์ด๋ป๊ฒ ์ธก์ ํ ์ ์๋์ง ์ ํํ ์ดํดํ ์ค๋น๊ฐ ๋์ด ์์ง ์์ผ๋ฏ๋ก ๊ถ์ฅ ์ฌํญ์ ๋ฏฟ์์ผ๋ก ๋ฐ์๋ค์ด๊ณ ๊ฐ์ ์ผ๋ก ์ฌ์ฉํฉ๋๋ค. ์ค์ ๋ก ๋ชจ๋ CDN์ด ๋์ผํ๊ฒ ์์ฑ๋๋ ๊ฒ์ ์๋๋๋ค.
์ง๊ธ CDN ์ฌ์ฉํ๊ธฐ
CDN ์ฌ์ฉ์ ์ ์ฉ์ฑ์ ํ๊ฐํ๋ ค๋ฉด CDN์ ๋ถ๋ฅํด์ผ ํฉ๋๋ค. ํ์ฌ ์ค์ ๋ก ํ์ธํ ์ ์๋ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค(๋ฌผ๋ก ๊ดํธ ์์ ์๋ ์์ ํ ๊ฒ์ ์๋๋๋ค).
- JS ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐฐํฌ๋ฅผ ์ํ ๋ฌด๋ฃ CDN(MaxCDN, Google. Yandex).
- ํด๋ผ์ด์ธํธ ์ต์ ํ๋ฅผ ์ํ ์๋น์ค CDN(์: ๊ธ๊ผด์ฉ Google Fonts, ์ด๋ฏธ์ง์ฉ Cloudinary, Cloudimage)
- CMS์ ์ ์ ๋ฐ ๋ฆฌ์์ค ์ต์ ํ๋ฅผ ์ํ CDN(Bitrix, WordPress ๋ฐ ๊ธฐํ์์ ์ฌ์ฉ ๊ฐ๋ฅ)
- ๋ฒ์ฉ CDN(StackPath, CDNVideo, NGENIX, Megafon).
- ์น์ฌ์ดํธ ๊ฐ์ํ๋ฅผ ์ํ CDN(Cloudflare, Imperva, Airi).
์ด๋ฌํ ์ ํ ๊ฐ์ ์ฃผ์ ์ฐจ์ด์ ์ CDN์ ํต๊ณผํ๋ ํธ๋ํฝ์ ์์ ๋๋ค. ์ ํ 1-3์ ํ๋์ ์์ฒญ๋ถํฐ ์์ญ ๊ฐ(๋ณดํต ์ฌ์ง)๊น์ง ์ฝํ ์ธ ์ ์ผ๋ถ๋ง ์ ๋ฌํ๋ ๊ฒ์ ๋๋ค. ์ ํ 4์ 5๋ CDN์ ํตํ ํธ๋ํฝ์ ์ ์ฒด ํ๋ก์์ ๋๋ค.
์ค์ ๋ก ์ด๋ ์ฌ์ดํธ๋ฅผ ๋ก๋ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ฐ๊ฒฐ ์๋ฅผ ์๋ฏธํฉ๋๋ค. HTTP/2์์๋ ํธ์คํธ์ ๋ํ ๋จ์ผ TCP ์ฐ๊ฒฐ์ ์ฌ์ฉํ์ฌ ์ํ๋ ์์ ์์ฒญ์ ์ฒ๋ฆฌํฉ๋๋ค. ๋ฆฌ์์ค๋ฅผ ๋ฉ์ธ ํธ์คํธ(์๋ณธ)์ CDN์ผ๋ก ๋๋๋ฉด ์์ฒญ์ ์ฌ๋ฌ ๋๋ฉ์ธ์ ๋ถ์ฐํ๊ณ ์ฌ๋ฌ TCP ์ฐ๊ฒฐ์ ์์ฑํด์ผ ํฉ๋๋ค. ์ต์ ์ ๊ฒฝ์ฐ๋ DNS(1 RTT) + TCP(1 RTT) + TLS(2-3 RTT) = 6-7 RTT์ ๋๋ค. ์ด ๊ณต์์ ์ฅ์น์ ๋ฌด์ ์ฑ๋ ํ์ฑํ๋ฅผ ์ํ ๋ชจ๋ฐ์ผ ๋คํธ์ํฌ์ ์ง์ฐ(ํ์ฑํ๋์ง ์์ ๊ฒฝ์ฐ)๊ณผ ๊ธฐ์ง๊ตญ์ ์ง์ฐ์ ๊ณ ๋ คํ์ง ์์ต๋๋ค.
์ฌ์ดํธ์ ๋ก๋ฉ ํญํฌ ๋ชจ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค(CDN ์ฐ๊ฒฐ ์ง์ฐ ์๊ฐ์ RTT 150ms๋ก ๊ฐ์กฐ ํ์๋จ).
CDN์ด ๋ชจ๋ ์ฌ์ดํธ ํธ๋ํฝ(ํ์ฌ ์๋น์ค ์ ์ธ)์ ์ฒ๋ฆฌํ๋ ๊ฒฝ์ฐ ๋จ์ผ TCP ์ฐ๊ฒฐ์ ์ฌ์ฉํ์ฌ ์ถ๊ฐ ํธ์คํธ์ ๋ํ ์ฐ๊ฒฐ ์ง์ฐ์ ์ค์ผ ์ ์์ต๋๋ค. ๋ฌผ๋ก ์ด๋ HTTP/2 ์ฐ๊ฒฐ์๋ ์ ์ฉ๋ฉ๋๋ค.
์ถ๊ฐ ์ฐจ์ด์ ์ ํน์ CDN์ ๊ธฐ๋ฅ์ ๋ฐ๋ผ ๊ฒฐ์ ๋ฉ๋๋ค. ์ฒซ ๋ฒ์งธ ์ ํ์ ๊ฒฝ์ฐ ์ ์ ํ์ผ์ ํธ์คํ ํ๋ ๊ฒ์ด๊ณ , ๋ค์ฏ ๋ฒ์งธ ์ ํ์ ๊ฒฝ์ฐ ์ต์ ํ๋ฅผ ์ํด ์ฌ๋ฌ ์ ํ์ ์ฌ์ดํธ ์ฝํ ์ธ ๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ์ ๋๋ค.
์น์ฌ์ดํธ ๊ฐ์ํ๋ฅผ ์ํ CDN ๊ธฐ๋ฅ
๊ฐ๋ณ CDN ์ ํ์ ๊ธฐ๋ฅ์ ๊ด๊ณ์์ด ์ฌ์ดํธ ๊ฐ์ํ๋ฅผ ์ํ ์ ์ฒด CDN ๊ธฐ๋ฅ์ ์ค๋ช ํ ๋ค์ ๊ฐ ์ ํ์์ ๊ตฌํ๋๋ ๋ด์ฉ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1. ํ ์คํธ ๋ฆฌ์์ค ์์ถ
๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ด๊ณ ์ดํดํ๊ธฐ ์ฌ์ด ๊ธฐ๋ฅ์ด์ง๋ง ์ ๋๋ก ๊ตฌํ๋์ง ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ชจ๋ CDN์ ์์ถ ๊ธฐ๋ฅ์ ๊ฐ์ ๊ธฐ๋ฅ์ผ๋ก ์ ์ธํฉ๋๋ค. ํ์ง๋ง ์ข ๋ ์์ธํ ์ดํด๋ณด๋ฉด ๋จ์ ์ด ๋ถ๋ช ํด์ง๋๋ค.
- ๋์ ์์ถ์ ์ํด ๋ฎ์ ์์ค์ ์ฌ์ฉํ ์ ์์ต๋๋ค - 5-6(์: gzip์ ๊ฒฝ์ฐ ์ต๋๊ฐ์ 9)
- ์ ์ ์์ถ(์บ์์ ์๋ ํ์ผ)์ ์ถ๊ฐ ๊ธฐ๋ฅ(์: 11๋ฑ๊ธ์ zopfi ๋๋ brotli)์ ์ฌ์ฉํ์ง ์์ต๋๋ค.
- ํจ์จ์ ์ธ brotli ์์ถ์ ์ง์๋์ง ์์ต๋๋ค(gzip์ ๋นํด ์ฝ 20% ์ ์ฝ).
CDN์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋ค์ ๋ช ๊ฐ์ง ์ฌํญ์ ํ์ธํด ๋ณผ ๊ฐ์น๊ฐ ์์ต๋๋ค. CDN์์ ๊ฐ์ ธ์จ ํ์ผ์ ๊ฐ์ ธ์์ ์์ถ๋ ํฌ๊ธฐ๋ฅผ ๊ธฐ๋กํ๊ณ ๋น๊ต๋ฅผ ์ํด ์๋์ผ๋ก ์์ถํฉ๋๋ค. ์๋ฅผ ๋ค์ด brotli ์ง์์ด ํฌํจ๋ ์ผ๋ถ ์จ๋ผ์ธ ์๋น์ค๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
2. ํด๋ผ์ด์ธํธ ์บ์ฑ ํค๋ ์ค์
๋ํ ๊ฐ๋จํ ์๋ ํฅ์ ๊ธฐ๋ฅ: ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )์ ์ฝํ ์ธ ์บ์ฑ์ ์ํ ํค๋๋ฅผ ์ถ๊ฐํฉ๋๋ค. ์ต์ ํค๋๋ ์บ์ ์ ์ด์ด๊ณ , ์ค๋๋ ํค๋๋ ๋ง๋ฃ๋ฉ๋๋ค. ๋ํ Etag๋ฅผ ์ฌ์ฉํ ์๋ ์์ต๋๋ค. ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ์บ์ ์ ์ด์ ์ต๋ ์๋ช ์ด ์ถฉ๋ถํ ํฌ๋ค๋ ๊ฒ์ ๋๋ค(ํ ๋ฌ ์ด์). ๋ฆฌ์์ค๋ฅผ ์ต๋ํ ์บ์ํ ์ค๋น๊ฐ ๋๋ฉด ๋ถ๋ณ ์ต์ ์ ์ถ๊ฐํ ์ ์์ต๋๋ค.
CDN์ max-age ๊ฐ์ ๋ฎ์ถ์ด ์ฌ์ฉ์๊ฐ ์ ์ ์ฝํ ์ธ ๋ฅผ ๋ ์์ฃผ ๋ค์ ๋ก๋ํ๋๋ก ํ ์ ์์ต๋๋ค. ์ด๊ฒ์ด ๋ฌด์๊ณผ ์ฐ๊ฒฐ๋์ด ์๋์ง๋ ํ์คํ์ง ์์ต๋๋ค. ๋คํธ์ํฌ์ ํธ๋ํฝ์ ๋๋ฆฌ๊ฑฐ๋ ์บ์๋ฅผ ์ฌ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด๋ ์ฌ์ดํธ์์ ํธํ์ฑ์ ๋์ด๋ ค๋ ์๊ตฌ์ ๋๋ค. ์๋ฅผ ๋ค์ด ๊ธฐ๋ณธ Cloudflare ํค๋ ์บ์ ์๊ฐ์ 1์๊ฐ์ผ๋ก, ์ด๋ ๋ณ๊ฒฝํ ์ ์๋ ์ ์ ๋ฐ์ดํฐ์ ๊ฒฝ์ฐ ๋งค์ฐ ๋ฎ์ต๋๋ค.
3. ์ด๋ฏธ์ง ์ต์ ํ
CDN์ ์ด๋ฏธ์ง๋ฅผ ์บ์ฑํ๊ณ ์ ๊ณตํ๋ ๊ธฐ๋ฅ์ ์ํํ๋ฏ๋ก CDN ์ธก์์ ์ด๋ฏธ์ง๋ฅผ ์ต์ ํํ๊ณ ์ด๋ฌํ ํ์์ผ๋ก ์ฌ์ฉ์์๊ฒ ์ ๊ณตํ๋ ๊ฒ์ด ๋ ผ๋ฆฌ์ ์ ๋๋ค. ์ด ๊ธฐ๋ฅ์ CDN ์ ํ 2, 3, 5์์๋ง ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก ๋ฐ๋ก ์์ฝํฉ์๋ค.
๊ณ ๊ธ ์์ถ ํ์(์: WebP), ๋ณด๋ค ํจ์จ์ ์ธ ์ธ์ฝ๋(MozJPEG) ์ฌ์ฉ, ๋ถํ์ํ ๋ฉํ๋ฐ์ดํฐ ์ ๋ฆฌ ๋ฑ ๋ค์ํ ๋ฐฉ๋ฒ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ต์ ํํ ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ด๋ฌํ ์ต์ ํ์๋ ํ์ง ์์ค์ด ์๋ ์ต์ ํ์ ํ์ง ์์ค์ด ์๋ ์ต์ ํ์ ๋ ๊ฐ์ง ์ ํ์ด ์์ต๋๋ค. CDN์ ์ผ๋ฐ์ ์ผ๋ก ์ด๋ฏธ์ง ํ์ง ๋ณ๊ฒฝ์ ๋ํ ๊ณ ๊ฐ ๋ถ๋ง์ ํผํ๊ธฐ ์ํด ๋ฌด์์ค ์ต์ ํ๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ๋ ธ๋ ฅํฉ๋๋ค. ์ด๋ฌํ ์กฐ๊ฑด์์๋ ์ด๋์ด ์ต์ํ๋ฉ๋๋ค. ์ค์ ๋ก๋ JPEG ํ์ง ์์ค์ด ํ์ํ ๊ฒ๋ณด๋ค ํจ์ฌ ๋์ ๊ฒฝ์ฐ๊ฐ ๋ง์ผ๋ฏ๋ก ์ฌ์ฉ์ ๊ฒฝํ์ ์์์ํค์ง ์์ผ๋ฉด์ ๋ ๋ฎ์ ํ์ง ์์ค์ผ๋ก ์์ ํ๊ฒ ๋ค์ ์์ถํ ์ ์์ต๋๋ค. ๋ฐ๋ฉด์, ๊ฐ๋ฅํ ๋ชจ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํด ๋ณดํธ์ ์ผ๋ก ํ์ง ์์ค๊ณผ ์ค์ ์ ๊ฒฐ์ ํ๋ ๊ฒ์ ์ด๋ ต๊ธฐ ๋๋ฌธ์ CDN์ ์ปจํ ์คํธ(์ด๋ฏธ์ง์ ๋ชฉ์ , ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ํ)๋ฅผ ๊ณ ๋ คํ์ฌ ์ ์ฉํ ์ ์๋ ์ค์ ์ ๋นํด ์ข ๋ ๋ณด์์ ์ธ ์ค์ ์ ์ฌ์ฉํฉ๋๋ค. , ๋ฑ.)
4. TLS ์ฐ๊ฒฐ ์ต์ ํ
์ค๋๋ ๋๋ถ๋ถ์ ํธ๋ํฝ์ TLS ์ฐ๊ฒฐ์ ํตํด ์ด๋ํ๋ฏ๋ก TLS ํ์์ ์ถ๊ฐ ์๊ฐ์ด ์์๋ฉ๋๋ค. ์ต๊ทผ์๋ ์ด ํ๋ก์ธ์ค์ ์๋๋ฅผ ๋์ด๊ธฐ ์ํด ์๋ก์ด ๊ธฐ์ ์ด ๊ฐ๋ฐ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด EC ์ํธํ, TLS 1.3, ์ธ์ ์บ์ ๋ฐ ํฐ์ผ, ํ๋์จ์ด ์ํธํ ๊ฐ์(AES-NI) ๋ฑ์ด ์์ต๋๋ค. TLS๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ค์ ํ๋ฉด ์ฐ๊ฒฐ ์๊ฐ์ 0-1 RTT(DNS ๋ฐ TCP๋ ๊ณ์ฐํ์ง ์์)๋ก ์ค์ผ ์ ์์ต๋๋ค.
์ต์ ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๋ฌํ ๋ฐฉ์์ ์ง์ ๊ตฌํํ๋ ๊ฒ์ด ์ด๋ ต์ง ์์ต๋๋ค.
๋ชจ๋ CDN์ด TLS ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๊ตฌํํ๋ ๊ฒ์ ์๋๋๋ค. ์ด๋ TLS ์ฐ๊ฒฐ ์๊ฐ์ ์ธก์ ํ์ฌ ํ์ธํ ์ ์์ต๋๋ค(์: Webpagetest). ์๋ก์ด ์ฐ๊ฒฐ์ ์ด์์ ์ ๋๋ค - 1RTT, 2RTT - ํ๊ท ์์ค, 3RTT ๋ฑ - ๋ถ๋.
๋ํ CDN ์์ค์์ TLS๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ ์๋ฒ๋ TLS๋ฅผ ์ฒ๋ฆฌํด์ผ ํ์ง๋ง CDN ์ธก์์๋ ์๋ฒ์ CDN ๊ฐ์ ํธ๋ํฝ์ด ๊ณต์ฉ ๋คํธ์ํฌ๋ฅผ ํต๊ณผํ๊ธฐ ๋๋ฌธ์ ์ฃผ์ํด์ผ ํฉ๋๋ค. ์ต์ ์ ๊ฒฝ์ฐ์๋ ์ด์ค TLS ์ฐ๊ฒฐ ์ง์ฐ์ด ๋ฐ์ํฉ๋๋ค(์ฒซ ๋ฒ์งธ๋ CDN ํธ์คํธ์, ๋ ๋ฒ์งธ๋ CDN ํธ์คํธ์ ์๋ฒ ์ฌ์ด์์).
์ผ๋ถ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒฝ์ฐ ๋ณด์ ๋ฌธ์ ์ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ผ ๊ฐ์น๊ฐ ์์ต๋๋ค. ํธ๋ํฝ์ ์ผ๋ฐ์ ์ผ๋ก CDN ๋ ธ๋์์ ํด๋ ๋๋ฉฐ ์ด๋ ํธ๋ํฝ์ ๊ฐ๋ก์ฑ ์ ์๋ ์ ์ฌ์ ์ธ ๊ธฐํ์ ๋๋ค. ํธ๋ํฝ ๊ณต๊ฐ ์์ด ์์ ํ ์ ์๋ ์ต์ ์ ์ผ๋ฐ์ ์ผ๋ก ์ถ๊ฐ ๋น์ฉ์ ์ง๋ถํ๊ณ ์ต๊ณ ์๊ธ์ ์์ ์ ๊ณต๋ฉ๋๋ค.
5. ์ฐ๊ฒฐ ์ง์ฐ ๊ฐ์
๋ชจ๋๊ฐ ๋งํ๋ CDN์ ์ฃผ์ ์ด์ ์ CDN ํธ์คํธ์ ์ฌ์ฉ์ ์ฌ์ด์ ๋๊ธฐ ์๊ฐ์ด ์งง๋ค๋ ๊ฒ(๊ฑฐ๋ฆฌ๊ฐ ์งง์)์ ๋๋ค. ํธ์คํธ๊ฐ ์ฌ์ฉ์๊ฐ ์ง์ค๋ ์ง์ (๋์, ๊ตํต ๊ตํ ์ง์ ๋ฑ)์ ์์นํ๋ ์ง๋ฆฌ์ ์ผ๋ก ๋ถ์ฐ๋ ๋คํธ์ํฌ ์ํคํ ์ฒ๋ฅผ ์์ฑํ์ฌ ๋ฌ์ฑ๋ฉ๋๋ค.
์ค์ ๋ก ๋ค์ํ ๋คํธ์ํฌ์ ์ฐ์ ์์๋ ํน์ ์ง์ญ์ ์์ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฌ์์ CDN์ ๋ฌ์์์์ ๋ ๋ง์ ์ ์ ์ง์ ์ ๊ฐ๊ฒ ๋ฉ๋๋ค. ๋ฏธ๊ตญ ์ฌ๋๋ค์ ์ฐ์ ๋ฏธ๊ตญ์์ ๋คํธ์ํฌ๋ฅผ ๊ฐ๋ฐํ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ๊ฐ์ฅ ํฐ CDN Cloudflare ์ค ํ๋๋ ๋ฌ์์์ ๋ชจ์คํฌ๋ฐ์ ์ํธํํ ๋ฅด๋ถ๋ฅดํฌ์ 2๊ฐ ์ง์ ๋ง ๋ณด์ ํ๊ณ ์์ต๋๋ค. ์ฆ, ๋ชจ์คํฌ๋ฐ์ ์ง์ ๋ฐฐ์นํ๋ ๊ฒ์ ๋นํด ์ต๋ ์ฝ 10ms์ ์ง์ฐ ์๊ฐ์ ์ ์ฝํ ์ ์์ต๋๋ค.
๋๋ถ๋ถ์ ์๋ถ CDN์๋ ๋ฌ์์์ ์ง์ ์ด ์ ํ ์์ต๋๋ค. ์ฐ๊ฒฐํ๋ฉด ๋ฌ์์ ์ฒญ์ค์ ์ง์ฐ ์๊ฐ๋ง ๋๋ฆด ์ ์์ต๋๋ค.
6. ์ฝํ ์ธ ์ต์ ํ(์ถ์, ๊ตฌ์กฐ ๋ณ๊ฒฝ)
๊ฐ์ฅ ๋ณต์กํ๊ณ ๊ธฐ์ ์ ์ผ๋ก ์ง๋ณด๋ ์ง์ ์ ๋๋ค. ์ ๋ฌ ์ค์ ์ฝํ ์ธ ๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ์ ๋งค์ฐ ์ํํ ์ ์์ต๋๋ค. ์ถ์๋ฅผ ์ทจํ๋๋ผ๋ ์์ค ์ฝ๋๋ฅผ ์ค์ด๋ฉด(์ถ๊ฐ ๊ณต๊ฐ, ์ค์ํ์ง ์์ ๊ตฌ์กฐ ๋ฑ์ผ๋ก ์ธํด) ์ฑ๋ฅ์ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค. ๋ ์ฌ๊ฐํ ๋ณ๊ฒฝ ์ฌํญ(JS ์ฝ๋๋ฅผ HTML ๋์ผ๋ก ์ด๋, ํ์ผ ๋ณํฉ ๋ฑ)์ ๋ํด ์ด์ผ๊ธฐํ๋ ๊ฒฝ์ฐ ์ฌ์ดํธ ๊ธฐ๋ฅ์ ๋ฐฉํดํ ์ํ์ด ํจ์ฌ ๋ ๋์ต๋๋ค.
๋ฐ๋ผ์ ์ผ๋ถ ์ ํ 5 CDN๋ง์ด ์ด ์์ ์ ์ํํฉ๋๋ค. ๋ฌผ๋ก ์์ ์๋๋ฅผ ๋์ด๋ ๋ฐ ํ์ํ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์๋ํํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ์๋ ๋ถ์๊ณผ ์ต์ ํ๊ฐ ํ์ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ฌ์ฉ๋์ง ์๊ฑฐ๋ ์ค๋ณต๋ ์ฝ๋๋ฅผ ์ ๊ฑฐํ๋ ๊ฒ์ ์๋ ์์ ์ ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ด๋ฌํ ๋ชจ๋ ์ต์ ํ๋ ์ค์ ์ ์ํด ์ ์ด๋๋ฉฐ ๊ฐ์ฅ ์ํํ ์ต์ ํ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋นํ์ฑํ๋ฉ๋๋ค.
CDN ์ ํ๋ณ ๊ฐ์ ๊ธฐ๋ฅ ์ง์
์ด์ ๋ค์ํ ์ ํ์ CDN์ด ์ ๊ณตํ๋ ์ ์ฌ์ ์ธ ๊ฐ์ํ ๊ธฐํ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
ํธ์์ ๋ถ๋ฅ๋ฅผ ๋ฐ๋ณตํฉ๋๋ค.
- JS ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐฐํฌ๋ฅผ ์ํ ๋ฌด๋ฃ CDN(MaxCDN, Google. Yandex).
- ํด๋ผ์ด์ธํธ ์ต์ ํ๋ฅผ ์ํ ์๋น์ค CDN(์: ๊ธ๊ผด์ฉ Google Fonts, ์ด๋ฏธ์ง์ฉ Cloudinary, Cloudimage)
- CMS์ ์ ์ ๋ฐ ๋ฆฌ์์ค ์ต์ ํ๋ฅผ ์ํ CDN(Bitrix, WordPress ๋ฐ ๊ธฐํ์์ ์ฌ์ฉ ๊ฐ๋ฅ)
- ๋ฒ์ฉ CDN(StackPath, CDNVideo, NGENIX, Megafon).
- ์น์ฌ์ดํธ ๊ฐ์ํ๋ฅผ ์ํ CDN(Cloudflare, Imperva, Airi).
์ด์ CDN์ ๊ธฐ๋ฅ๊ณผ ์ข ๋ฅ๋ฅผ ๋น๊ตํด ๋ณด๊ฒ ์ต๋๋ค.
๊ธฐํ
1 ์ ํ
2 ์ ํ
3 ์ ํ
4 ์ ํ
5 ์ ํ
ํ
์คํธ ์์ถ
+โ
-
+โ
+โ
+
์บ์ ํค๋
+
+
+
+
+
์ฌ์ง๋ค
-
+โ
+โ
-
+
TLS
-
-
-
+โ
+
์ง์ฐ
-
-
-
+
+
๋ง์กฑ
-
-
-
-
+
์ด ํ์์ "+"๋ ์ ์ฒด ์ง์์ ๋ํ๋ด๊ณ "-"๋ ์ง์ํ์ง ์์ผ๋ฉฐ "+-"๋ ๋ถ๋ถ ์ง์์ ๋ํ๋ ๋๋ค. ๋ฌผ๋ก ์ค์ ๋ก๋ ์ด ํ์ ์ฐจ์ด๊ฐ ์์ ์ ์์ง๋ง(์๋ฅผ ๋ค์ด ์ผ๋ถ ๋ฒ์ฉ CDN์ ์ด๋ฏธ์ง ์ต์ ํ ๊ธฐ๋ฅ์ ๊ตฌํํฉ๋๋ค) ์ผ๋ฐ์ ์ธ ์์ด๋์ด๋ก๋ ์ ์ฉํฉ๋๋ค.
๊ฒฐ๊ณผ
์ด ๊ธฐ์ฌ๋ฅผ ์ฝ์ ํ ์ฌ์ดํธ ์๋๋ฅผ ๋์ด๊ธฐ ์ํ "CDN ์ฌ์ฉ" ๊ถ์ฅ ์ฌํญ์ ๋ํด ๋ ๋ช ํํ๊ฒ ์ดํดํ๊ฒ ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
๋ชจ๋ ๋น์ฆ๋์ค์์์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ชจ๋ ์๋น์ค์ ๋ง์ผํ ์ฝ์์ ๋ฏฟ์ ์ ์์ต๋๋ค. ์ค์ ์กฐ๊ฑด์์ ํจ๊ณผ๋ฅผ ์ธก์ ํ๊ณ ํ ์คํธํด์ผ ํฉ๋๋ค. ์ด๋ฏธ CDN์ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด ๊ธฐ์ฌ์ ์ค๋ช ๋ ๊ธฐ์ค์ ์ฌ์ฉํ์ฌ ํจ์จ์ฑ์ ํ์ธํ์ธ์.
์ง๊ธ CDN์ ์ฌ์ฉํ๋ฉด ์ฌ์ดํธ ๋ก๋ฉ ์๊ฐ์ด ๋๋ ค์ง ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ธ ๊ถ์ฅ ์ฌํญ์ผ๋ก๋ ๋ค์ ์ฌํญ์ ์ค์ ์ ๋ ์ ์์ต๋๋ค. ์ฒญ์ค์ ์ฐ๊ตฌํ๊ณ ์ง๋ฆฌ์ ๋ฒ์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค. ์ฃผ์ ์ฒญ์ค์ด ๋ฐ๊ฒฝ 1~2km ๋ด์ ์ง์ค๋์ด ์๋ ๊ฒฝ์ฐ ๋๊ธฐ ์๊ฐ ๋จ์ถ์ด๋ผ๋ ์ฃผ์ ๋ชฉ์ ์ ์ํด CDN์ด ํ์ํ์ง ์์ต๋๋ค. ๋์ ์๋ฒ๋ฅผ ์ฌ์ฉ์์๊ฒ ๋ ๊ฐ๊น์ด ๋ฐฐ์นํ๊ณ ์ ์ ํ๊ฒ ๊ตฌ์ฑํ์ฌ ๋ฌธ์์ ์ค๋ช ๋ ๋๋ถ๋ถ์ ์ต์ ํ(๋ฌด๋ฃ ๋ฐ ์๊ตฌ)๋ฅผ ์ป์ ์ ์์ต๋๋ค.
์ฒญ์ค์ด ์ค์ ๋ก ์ง๋ฆฌ์ ์ผ๋ก ๋ถ์ฐ๋์ด ์๋ ๊ฒฝ์ฐ(๋ฐ๊ฒฝ 3000km ์ด์) ๊ณ ํ์ง CDN์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ๋ง ์ ์ฉํ ๊ฒ์
๋๋ค. ๊ทธ๋ฌ๋ CDN์ด ์ ํํ ๋ฌด์์ ๊ฐ์ํํ ์ ์๋์ง ๋ฏธ๋ฆฌ ์ดํดํด์ผ ํฉ๋๋ค(๊ธฐ๋ฅ ํ ๋ฐ ์ค๋ช
์ฐธ์กฐ). ๊ทธ๋ฌ๋ ์น ์ฌ์ดํธ ๊ฐ์์ ์ฌ์ ํ โโCDN ์ฐ๊ฒฐ๋ก๋ ํด๊ฒฐํ ์ ์๋ ๋ณต์กํ ์์
์ผ๋ก ๋จ์ ์์ต๋๋ค. ์์ ์ต์ ํ ์ธ์๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ธ ๊ฐ์ ์๋จ์ CDN ๋ค์ ๋จ์ ์์ต๋๋ค. ์ฆ, ์๋ฒ ๋ถ๋ถ ์ต์ ํ, ํด๋ผ์ด์ธํธ ๋ถ๋ถ์ ๋ํ ๊ณ ๊ธ ๋ณ๊ฒฝ(์ฌ์ฉํ์ง ์๋ ์ฝ๋ ์ ๊ฑฐ, ๋ ๋๋ง ํ๋ก์ธ์ค ์ต์ ํ, ์ฝํ
์ธ ์์
, ๊ธ๊ผด, ์ ์์ฑ ๋ฑ)์ด ์์ต๋๋ค. )
์ถ์ฒ : habr.com