ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์๋ก ์ต์ ์ ์น ๊ฒฝํ์ ํ๋ณดํ์ธ์. ๊ธ๋ก๋ฒ ๊ณ ์ฑ๋ฅ ์น์ฌ์ดํธ๋ฅผ ์ํ ํต์ฌ ์งํ, ๋ถ์, ์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ๋ฅผ ํ์ํ์ธ์.
ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์: ์ข ํฉ์ ์ธ ๋ฉํธ๋ฆญ ๋์๋ณด๋
์ค๋๋ ๊ฒฝ์์ด ์น์ดํ ๋์งํธ ํ๊ฒฝ์์ ํ๋ก ํธ์๋์ ์๋์ ๋ฐ์์ฑ์ ๋ ์ด์ '์์ผ๋ฉด ์ข์' ๊ฒ์ด ์๋๋ผ ์ฌ์ฉ์ ๋ง์กฑ๋, ์ ํ์จ ๋ฐ ์ ๋ฐ์ ์ธ ๋น์ฆ๋์ค ์ฑ๊ณต์ ๊ทผ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ ๋๋ค. ์ ์ธ๊ณ ์ฌ์ฉ์๋ ์ํํ๊ณ ๋ฒ๊ฐ์ฒ๋ผ ๋น ๋ฅธ ์ํธ ์์ฉ์ ๊ธฐ๋ํ๋ฉฐ, ๊ทธ ์ดํ์ ๊ฒ์ ์ข์ ๊ฐ, ์ดํ ๋ฐ ์๋นํ ์์ต ์์ค๋ก ์ด์ด์ง ์ ์์ต๋๋ค. ์ง์ ์ผ๋ก ๋ฐ์ด๋๊ธฐ ์ํด์๋ ์ฑ๋ฅ ๋ฌธ์ ์ ๋ํ ์ธ์๋ง์ผ๋ก๋ ๋ถ์กฑํฉ๋๋ค. ๊ฐ๋ ฅํ ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์์ ์์ฝ๋ ์ฌ์ ์๋ฐฉ์ ์ด๊ณ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์ ๊ทผ ๋ฐฉ์์ด ํ์ํฉ๋๋ค.
์ด ์ข ํฉ ๊ฐ์ด๋๋ ํ๋ก ํธ์๋์ ์ํ ๋ฐ ์ฑ๋ฅ์ ๋ํ ์ ์ฒด์ ์ธ ๋ณด๊ธฐ๋ฅผ ์ ๊ณตํ๋ ๊ฐ๋ ฅํ ๋ฉํธ๋ฆญ ๋์๋ณด๋๋ฅผ ๊ตฌ์ถํ๊ณ ํ์ฉํ๋ ๋ณต์กํ ๊ณผ์ ์ ํ๊ตฌํฉ๋๋ค. ํ์ ๋ฉํธ๋ฆญ, ์์ง ๋๊ตฌ, ๊ทธ๋ฆฌ๊ณ ๊ธ๋ก๋ฒ ์ ์ฌ ๊ณ ๊ฐ์๊ฒ ํ์ํ ์ฌ์ฉ์ ๊ฒฝํ์ ๋ณด์ฅํ๊ธฐ ์ํด ์ด๋ฌํ ๋ฐ์ดํฐ๋ฅผ ํด์ํ๊ณ ์กฐ์น๋ฅผ ์ทจํ๋ ์ ๋ต์ ํ์ํ ๊ฒ์ ๋๋ค.
ํ๋ก ํธ์๋ ์ฑ๋ฅ์ ํ์์ฑ
๋์๋ณด๋ ์์ฒด๋ก ๋ค์ด๊ฐ๊ธฐ ์ ์ ํ๋ก ํธ์๋ ์ฑ๋ฅ์ด ์ ์ค์ํ์ง ๋ช ํํ ํฉ์๋ค. ๋๋ฆฌ๊ฑฐ๋ ์ต์ ํ๋์ง ์์ ์น์ฌ์ดํธ๋ ๋ค์๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์ด๋ํ ์ ์์ต๋๋ค.
- ์ฌ์ฉ์ ๊ฑฐ๋ถ: ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ์ฌ์ฉ์๋ ์น์ฌ์ดํธ ๋ก๋ ์๊ฐ์ด ๋๋ฌด ์ค๋ ๊ฑธ๋ฆฌ๋ฉด ์น์ฌ์ดํธ๋ฅผ ํฌ๊ธฐํ๋ค๋ ๊ฒ์ ์ผ๊ด๋๊ฒ ๋ณด์ฌ์ค๋๋ค. ๊ธ๋ก๋ฒ ์ ์ฌ ๊ณ ๊ฐ์๊ฒ๋ ์ด๋ฌํ ์กฐ๋ฐ์ฌ์ด ๋ค์ํ ๋คํธ์ํฌ ์กฐ๊ฑด๊ณผ ์ฅ์น ๊ธฐ๋ฅ์ ๊ฑธ์ณ ์ฆํญ๋ฉ๋๋ค.
- ๋ธ๋๋ ํํ ์์: ๋๋ฆฐ ์น์ฌ์ดํธ๋ ๋ธ๋๋์ ์ข์ง ์์ ์ธ์์ ์ฃผ๋ฉฐ ์ ๋ฌธ์ฑ๊ณผ ์ฃผ์ ๋ถ์กฑ์ ์ ๋ฌํฉ๋๋ค.
- ์ ํ์จ ๊ฐ์: ๋ฐ๋ฆฌ์ด๋ง๋ค ์ค์ํฉ๋๋ค. ๋๋ฆฐ ๋ก๋ ์๊ฐ์ ์ ์ ์๊ฑฐ๋ ์ฌ์ดํธ, ๋ฆฌ๋ ์์ฑ ์์ ๋ฐ ์ค์ํ ์ฌ์ฉ์ ์์ ์ ๋ํ ๋ฎ์ ์ ํ์จ๊ณผ ์ง์ ์ ์ผ๋ก ์๊ด ๊ด๊ณ๊ฐ ์์ต๋๋ค.
- SEO์ ๋ถ์ ์ ์ธ ์ํฅ: Google๊ณผ ๊ฐ์ ๊ฒ์ ์์ง์ ์์์์ ๋น ๋ฅด๊ฒ ๋ก๋๋๋ ์น์ฌ์ดํธ๋ฅผ ์ฐ์ ์ํฉ๋๋ค. ์ฑ๋ฅ์ด ์ ํ๋๋ฉด ์ฌ์ดํธ๊ฐ ๊ฒ์ ๊ฒฐ๊ณผ์์ ๋ด๋ ค๊ฐ ์ ๊ธฐ์ ํธ๋ํฝ์ด ๊ฐ์ํ ์ ์์ต๋๋ค.
- ์ดํ๋ฅ ์ฆ๊ฐ: ์ฌ์ฉ์๋ ์ฒซ ๊ฒฝํ์ด ๋ต๋ตํ ์ ๋๋ก ๋๋ฆฌ๋ฉด ๋ ์ด์ ํ์ํ ๊ฐ๋ฅ์ฑ์ด ๋ฎ์ต๋๋ค.
ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์๋ ์ค์ ์ง์ค์ ์ ์ด ์ผํฐ ์ญํ ์ ํ์ฌ ์ฌ์ฉ์์๊ฒ ์ํฅ์ ๋ฏธ์น๊ธฐ ์ ์ ์ฑ๋ฅ ๋ณ๋ชฉ ํ์์ ์๋ณ, ์ง๋จ ๋ฐ ํด๊ฒฐํ ์ ์๋๋ก ํฉ๋๋ค.
ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์ ์ค๊ณ: ํต์ฌ ๋ฉํธ๋ฆญ ๋ฒ์ฃผ
์ง์ ์ผ๋ก ํฌ๊ด์ ์ธ ๋์๋ณด๋๋ ์ด๊ธฐ ๋ก๋๋ถํฐ ์ง์์ ์ธ ์ํธ ์์ฉ๊น์ง ์ฑ๋ฅ์ ๋ค์ํ ์ธก๋ฉด์ ํฌํจํ๋ ๋ค๋ฉด์ ์ธ ๋ณด๊ธฐ๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ๋ฉํธ๋ฆญ์ ๋ค์ ํต์ฌ ์์ญ์ผ๋ก ๊ด๋ฒ์ํ๊ฒ ๋ถ๋ฅํ ์ ์์ต๋๋ค.
1. ํต์ฌ ์น ๋ฐ์ดํ (CWV)
Google์์ ๋์ ํ ํต์ฌ ์น ๋ฐ์ดํ์ ๋ก๋ฉ ์ฑ๋ฅ, ์ํธ ์์ฉ์ฑ ๋ฐ ์๊ฐ์ ์์ ์ฑ์ ๋ํ ์ค์ ์ฌ์ฉ์ ๊ฒฝํ์ ์ธก์ ํ๋๋ก ์ค๊ณ๋ ๋ฉํธ๋ฆญ ์ธํธ์ ๋๋ค. SEO์ ์ค์ํ๋ฉฐ ๋ชจ๋ ์ฑ๋ฅ ๋์๋ณด๋์ ์ข์ ์์์ ์ ๋๋ค.
- ๊ฐ์ฅ ํฐ ์ฝํ ์ธ ํ ํ์ธํธ (LCP): ๋ก๋ฉ ์ฑ๋ฅ์ ์ธก์ ํฉ๋๋ค. ํ์ด์ง ๋ก๋ ํ์๋ผ์ธ์์ ๊ฐ์ฅ ํฐ ์ฝํ ์ธ ์์(์: ์ด๋ฏธ์ง, ํ ์คํธ ๋ธ๋ก)๊ฐ ๋ทฐํฌํธ ๋ด์์ ๋ณด์ด๋ ์ง์ ์ ํ์ํฉ๋๋ค. ์ข์ LCP๋ 2.5์ด ์ดํ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
- ์ฒซ ์ ๋ ฅ ์ง์ฐ (FID) / ๋ค์ ํ์ธํธ๊น์ง์ ์ํธ ์์ฉ (INP): ์ํธ ์์ฉ์ฑ์ ์ธก์ ํฉ๋๋ค. FID๋ ์ฌ์ฉ์๊ฐ ํ์ด์ง์ ์ฒ์ ์ํธ ์์ฉํ๋ ์์ ๋ถํฐ ๋ธ๋ผ์ฐ์ ๊ฐ ํด๋น ์ํธ ์์ฉ์ ์๋ตํ์ฌ ์ด๋ฒคํธ ํธ๋ค๋ฌ ์ฒ๋ฆฌ๋ฅผ ์์ํ ์ ์๋ ์๊ฐ๊น์ง์ ์๊ฐ์ ์ธก์ ํฉ๋๋ค. INP๋ FID๋ฅผ ๋์ฒดํ๋ ๋ ์๋กญ๊ณ ํฌ๊ด์ ์ธ ๋ฉํธ๋ฆญ์ผ๋ก, ์ฌ์ฉ์๊ฐ ํ์ด์ง์ ์ํธ ์์ฉํ๋ ๋ชจ๋ ์ํธ ์์ฉ์ ์ง์ฐ ์๊ฐ์ ์ธก์ ํ๊ณ ๊ฐ์ฅ ๋์ ์ฌ๋ก๋ฅผ ๋ณด๊ณ ํฉ๋๋ค. ์ข์ INP๋ 200๋ฐ๋ฆฌ์ด ์ดํ์ ๋๋ค.
- ๋์ ๋ ์ด์์ ์ด๋ (CLS): ์๊ฐ์ ์์ ์ฑ์ ์ธก์ ํฉ๋๋ค. ํ์ด์ง๊ฐ ๋ก๋๋ ๋ ์ฌ์ฉ์๊ฐ ์ฝํ ์ธ ๋ ์ด์์์ ์์์น ๋ชปํ ์ด๋์ ๊ฒฝํํ๋ ๋น๋๋ฅผ ์ ๋ํํฉ๋๋ค. ์ข์ CLS๋ 0.1 ์ดํ์ ๋๋ค.
์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ: LCP๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด ์ด๋ฏธ์ง ์ต์ ํ, ์ค์ํ์ง ์์ JavaScript ์ฐ๊ธฐ, ํจ์จ์ ์ธ ์๋ฒ ์๋ต ๋ณด์ฅ์ ์ง์คํ์ธ์. FID/INP์ ๊ฒฝ์ฐ ์ฅ๊ธฐ ์คํ JavaScript ์์ ๋ฅผ ์ต์ํํ๊ณ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์ต์ ํํ์ธ์. CLS์ ๊ฒฝ์ฐ ์ด๋ฏธ์ง ๋ฐ ๋น๋์ค ํฌ๊ธฐ๋ฅผ ์ง์ ํ๊ณ , ๊ธฐ์กด ์ฝํ ์ธ ์์ ๋์ ์ผ๋ก ์ฝํ ์ธ ๋ฅผ ์ฝ์ ํ๋ ๊ฒ์ ํผํ๊ณ , ๊ธ๊ผด ํ์ผ์ ๋ฏธ๋ฆฌ ๋ก๋ํ์ธ์.
2. ํ์ด์ง ๋ก๋ ์๊ฐ ๋ฉํธ๋ฆญ
์ด๋ฌํ ๋ฉํธ๋ฆญ์ ์ ํต์ ์ด์ง๋ง ์ฌ์ ํ ์ค์ํ๋ฉฐ ํ์ด์ง์ ๋ฆฌ์์ค๊ฐ ์ผ๋ง๋ ๋นจ๋ฆฌ ๊ฐ์ ธ์์ง๊ณ ๋ ๋๋ง๋๋์ง์ ๋ํ ์ธ๋ถํ๋ ์ดํด๋ฅผ ์ ๊ณตํฉ๋๋ค.
- DNS ์กฐํ ์๊ฐ: ๋ธ๋ผ์ฐ์ ๊ฐ ๋๋ฉ์ธ ์ด๋ฆ์ IP ์ฃผ์๋ก ํ์ธํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
- ์ฐ๊ฒฐ ์๊ฐ: ์๋ฒ์ ์ฐ๊ฒฐ์ ์ค์ ํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
- SSL ํธ๋์ ฐ์ดํฌ ์๊ฐ: HTTPS ์ฌ์ดํธ์ ๊ฒฝ์ฐ ๋ณด์ ์ฐ๊ฒฐ์ ์ค์ ํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
- ์ฒซ ๋ฐ์ดํธ๊น์ง์ ์๊ฐ (TTFB): ๋ธ๋ผ์ฐ์ ๊ฐ ํ์ด์ง๋ฅผ ์์ฒญํ ์์ ๋ถํฐ ์๋ฒ๋ก๋ถํฐ ์ฒซ ๋ฒ์งธ ๋ฐ์ดํธ ์ ๋ณด๋ฅผ ๋ฐ๋ ์์ ๊น์ง์ ์๊ฐ์ ๋๋ค. ์ด๋ ์๋ฒ ์๋ต ์๊ฐ์ ์ค์ํ ์งํ์ ๋๋ค.
- ์ฒซ ์ฝํ ์ธ ํ ํ์ธํธ (FCP): ๋ธ๋ผ์ฐ์ ๊ฐ DOM์์ ์ฒซ ๋ฒ์งธ ์ฝํ ์ธ ๋ฅผ ๋ ๋๋งํ์ฌ ์ฌ์ฉ์์๊ฒ ์ฆ๊ฐ์ ์ธ ํผ๋๋ฐฑ์ ์ ๊ณตํ๋ ์์ ์ ๋๋ค.
- DOMContentLoaded: ์ด๊ธฐ HTML ๋ฌธ์๊ฐ ์คํ์ผ์ํธ, ์ด๋ฏธ์ง ๋ฐ ํ์ ํ๋ ์์ ๋ก๋ฉ์ด ์๋ฃ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ์์ ํ ๋ก๋๋๊ณ ๊ตฌ๋ฌธ ๋ถ์๋ ์์ ์ ๋๋ค.
- ๋ก๋ ์ด๋ฒคํธ: ํ์ด์ง์ ๋ชจ๋ ์ข ์ ๋ฆฌ์์ค(์ด๋ฏธ์ง, ์คํฌ๋ฆฝํธ, ์คํ์ผ์ํธ)๊ฐ ์์ ํ ๋ก๋๋ ์์ ์ ๋๋ค.
์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ: ์์ ์ ์ธ DNS ๊ณต๊ธ์๋ฅผ ์ฌ์ฉํ๊ณ ๋ธ๋ผ์ฐ์ DNS ์บ์ฑ์ ํ์ฉํ์ฌ DNS ์กฐํ ์๊ฐ์ ์ค์ ๋๋ค. HTTP/2 ๋๋ HTTP/3๋ฅผ ์ฌ์ฉํ๊ณ ๋ฆฌ๋๋ ์ ์ ์ต์ํํ์ฌ ์ฐ๊ฒฐ ์๊ฐ์ ์ต์ ํํฉ๋๋ค. ์๋ฒ์ธก ์ฝ๋๋ฅผ ์ต์ ํํ๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฟผ๋ฆฌ๋ฅผ ์คํํ๊ณ , ์๋ฒ์ธก ์บ์ฑ์ ํ์ฉํ์ฌ TTFB๋ฅผ ๊ฐ์ ํฉ๋๋ค. ์ค์ CSS๋ฅผ ์ฐ์ ์ํ๊ณ , ํ์์ ์ด์ง ์์ JavaScript๋ฅผ ์ฐ๊ธฐํ๊ณ , ์ด๋ฏธ์ง ๋ก๋๋ฅผ ์ต์ ํํ์ฌ FCP ๋ฐ DOMContentLoaded๋ฅผ ์ค์ ๋๋ค.
3. ๋ ๋๋ง ์ฑ๋ฅ ๋ฉํธ๋ฆญ
์ด๋ฌํ ๋ฉํธ๋ฆญ์ ๋ธ๋ผ์ฐ์ ๊ฐ ์ผ๋ง๋ ํจ์จ์ ์ผ๋ก ํ๋ฉด์ ํฝ์ ์ ๊ทธ๋ฆฌ๊ณ ์ ๋ฐ์ดํธ๋ฅผ ์ฒ๋ฆฌํ๋์ง์ ์ค์ ์ ๋ก๋๋ค.
- ์ด๋น ํ๋ ์ ์ (FPS): ์ ๋๋ฉ์ด์ ๋ฐ ๋ํํ ์์์ ํนํ ๊ด๋ จ์ด ์์ผ๋ฉฐ, ์ผ๊ด๋ ๋์ FPS(์ด์์ ์ผ๋ก 60 FPS)๋ ๋ถ๋๋ฌ์ด ์๊ฐ ํจ๊ณผ๋ฅผ ๋ณด์ฅํฉ๋๋ค.
- ์คํฌ๋ฆฝํธ ์คํ ์๊ฐ: JavaScript ์คํ์ ์๋น๋ ์ด ์๊ฐ์ผ๋ก, ๋ฉ์ธ ์ค๋ ๋๋ฅผ ์ฐจ๋จํ๊ณ ๋ ๋๋ง์ ์ง์ฐ์ํฌ ์ ์์ต๋๋ค.
- ์คํ์ผ ์ฌ๊ณ์ฐ/๋ ์ด์์: ๋ณ๊ฒฝ ํ ๋ธ๋ผ์ฐ์ ๊ฐ ์คํ์ผ์ ๋ค์ ๊ณ์ฐํ๊ณ ํ์ด์ง ๋ ์ด์์์ ๋ค์ ๋ ๋๋งํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
- ํ์ธํ ์๊ฐ: ๋ธ๋ผ์ฐ์ ๊ฐ ํ๋ฉด์ ํฝ์ ์ ๊ทธ๋ฆฌ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ: JavaScript๋ฅผ ํ๋กํ์ผ๋งํ์ฌ ์ฅ๊ธฐ ์คํ ์คํฌ๋ฆฝํธ๋ฅผ ์๋ณํ๊ณ ์ต์ ํํฉ๋๋ค. ํจ์จ์ ์ธ CSS ์ ํ๊ธฐ๋ฅผ ์ฌ์ฉํ๊ณ ๋น๋ฒํ ์ฌ๊ณ์ฐ์ ๊ฐ์ ํ๋ ๊ณผ๋ํ๊ฒ ๋ณต์กํ ์คํ์ผ๋ง์ ํผํ์ธ์. ์ ๋๋ฉ์ด์ ์ ๊ฒฝ์ฐ ๋ ๋ถ๋๋ฌ์ด ์ฑ๋ฅ์ ์ํด CSS ์ ๋๋ฉ์ด์ ๋๋ `requestAnimationFrame`์ ํ์ฉํ์ธ์. ๋ ์ด์์ ์ค๋์ฑ์ ํธ๋ฆฌ๊ฑฐํ๋ DOM ์กฐ์์ ์ต์ํํฉ๋๋ค.
4. ๋คํธ์ํฌ ๋ฐ ๋ฆฌ์์ค ๋ฉํธ๋ฆญ
๋ฆฌ์์ค๊ฐ ์ด๋ป๊ฒ ๊ฐ์ ธ์์ง๊ณ ์ ๊ณต๋๋์ง ์ดํดํ๋ ๊ฒ์ ๋ค์ํ ๊ธ๋ก๋ฒ ๋คํธ์ํฌ ์กฐ๊ฑด์์ ๋ก๋ ์๊ฐ์ ์ต์ ํํ๋ ๋ฐ ์ค์ํฉ๋๋ค.
- ์์ฒญ ์: ํ์ด์ง ๋ก๋๋ฅผ ์ํด ๋ฐ์ํ ์ด HTTP ์์ฒญ ์์ ๋๋ค.
- ์ด ํ์ด์ง ํฌ๊ธฐ: ํ์ด์ง๋ฅผ ๋ ๋๋งํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ๋ฆฌ์์ค(HTML, CSS, JavaScript, ์ด๋ฏธ์ง, ๊ธ๊ผด)์ ์ด ํฌ๊ธฐ์ ๋๋ค.
- ์์ฐ ํฌ๊ธฐ (์ธ๋ถํ): JavaScript ํ์ผ, CSS ํ์ผ, ์ด๋ฏธ์ง ๋ฐ ๊ธ๊ผด๊ณผ ๊ฐ์ ์ฃผ์ ์์ฐ์ ๊ฐ๋ณ ํฌ๊ธฐ์ ๋๋ค.
- ์บ์ ํํธ์จ: ์๋ณธ ์๋ฒ์์ ๊ฐ์ ธ์จ ๋ฆฌ์์ค์ ๋นํด ๋ธ๋ผ์ฐ์ ๋๋ CDN ์บ์์์ ์ ๊ณต๋ ๋ฆฌ์์ค์ ๋น์จ์ ๋๋ค.
- ์์ถ๋ฅ : ํ ์คํธ ๊ธฐ๋ฐ ์์ฐ์ ๋ํ ์๋ฒ์ธก ์์ถ(์: Gzip, Brotli)์ ํจ๊ณผ์ ๋๋ค.
์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ: CSS ๋ฐ JavaScript๋ฅผ ๋ฒ๋ค๋งํ๊ณ , CSS ์คํ๋ผ์ดํธ๋ฅผ ์ฌ์ฉํ๊ณ , `link rel=preload`๋ฅผ ์ ์คํ๊ฒ ์ฌ์ฉํ์ฌ ์์ฒญ ์๋ฅผ ์ค์ ๋๋ค. ์ด๋ฏธ์ง๋ฅผ ์์ถํ๊ณ , CSS/JS๋ฅผ ์ต์ํํ๊ณ , WebP์ ๊ฐ์ ์ต์ ์ด๋ฏธ์ง ํ์์ ์ฌ์ฉํ์ฌ ์์ฐ ํฌ๊ธฐ๋ฅผ ์ต์ ํํฉ๋๋ค. ์ ์ ํ ์บ์ ์ ์ด ํค๋๋ฅผ ์ค์ ํ๊ณ ์ฝํ ์ธ ์ ์ก ๋คํธ์ํฌ(CDN)๋ฅผ ํ์ฉํ์ฌ ์บ์ ํํธ์จ์ ๊ฐ์ ํฉ๋๋ค. ์๋ฒ์์ ํจ์จ์ ์ธ ์์ถ์ด ํ์ฑํ๋์๋์ง ํ์ธํฉ๋๋ค.
5. ์ฌ์ฉ์ ๊ฒฝํ ๋ฐ ์ฐธ์ฌ ์งํ
์๊ฒฉํ๊ฒ ์ฑ๋ฅ ๋ฉํธ๋ฆญ์ ์๋์ง๋ง, ์ด๋ฌํ ๋ฉํธ๋ฆญ์ ํ๋ก ํธ์๋ ์ฑ๋ฅ์ ์ง์ ์ ์ธ ์ํฅ์ ๋ฐ์ผ๋ฉฐ ์ ์ฒด์ ์ธ ๋ณด๊ธฐ๋ฅผ ์ํด ํ์์ ์ ๋๋ค.
- ํ์ด์ง๋น ์๊ฐ/์ธ์ ์ง์ ์๊ฐ: ์ฌ์ฉ์๊ฐ ์ฌ์ดํธ์์ ๋ณด๋ด๋ ์๊ฐ์ ๋๋ค.
- ์ดํ๋ฅ : ๋ฐฉ๋ฌธ์๊ฐ ํ ํ์ด์ง๋ง ๋ณด๊ณ ์ฌ์ดํธ๋ฅผ ๋ ๋๋ ๋น์จ์ ๋๋ค.
- ์ ํ์จ: ์ํ๋ ์์ ์ ์๋ฃํ๋ ๋ฐฉ๋ฌธ์ ๋น์จ์ ๋๋ค.
- ์ฌ์ฉ์ ํผ๋๋ฐฑ/๊ฐ์ฑ: ์ฌ์ฉ์ ๊ฒฝํ์ ๋ํ ์ฌ์ฉ์๋ก๋ถํฐ์ ์ง์ ์ ์ธ ํผ๋๋ฐฑ์ ๋๋ค.
์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ: ์ด๋ฌํ ๋ฉํธ๋ฆญ์ ์ฑ๋ฅ ๋ฐ์ดํฐ์ ํจ๊ป ๋ชจ๋ํฐ๋งํฉ๋๋ค. ๋ก๋ ์๊ฐ ๋ฐ ์ํธ ์์ฉ์ฑ ๊ฐ์ ์ ์ข ์ข ๋ ๋์ ์ฐธ์ฌ ๋ฐ ์ ํ์จ๊ณผ ์๊ด ๊ด๊ณ๊ฐ ์์ต๋๋ค. ์ด๋ฌํ ์ฌ์ฉ์ ์ค์ฌ ๋ฉํธ๋ฆญ์ ๋ํ ์ฑ๋ฅ ์ต์ ํ์ ์ํฅ์ ๊ฒ์ฆํ๊ธฐ ์ํด A/B ํ ์คํธ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์ ๋๊ตฌ
์ด๋ฌํ ์ค์ํ ๋ฉํธ๋ฆญ์ ์์งํ๋ ค๋ฉด ๋ค์ํ ๋๊ตฌ์ ์กฐํฉ์ด ํ์ํฉ๋๋ค. ๊ฐ๋ ฅํ ๊ด์ธก์๋ ์ข ์ข ์ฌ๋ฌ ์์ค์์ ๋ฐ์ดํฐ๋ฅผ ํตํฉํฉ๋๋ค.
1. ํฉ์ฑ ๋ชจ๋ํฐ๋ง ๋๊ตฌ
์ด ๋๊ตฌ๋ ๋ค์ํ ์์น์ ๋คํธ์ํฌ ์กฐ๊ฑด์์ ์ฌ์ฉ์ ๋ฐฉ๋ฌธ์ ์๋ฎฌ๋ ์ด์ ํ์ฌ ์ผ๊ด๋๊ณ ๊ธฐ๋ณธ์ ์ธ ์ฑ๋ฅ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ค์ ์ฌ์ฉ์๊ฐ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ๊ธฐ ์ ์ ์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ์๋ณํ๋ ๋ฐ ํ์ํฉ๋๋ค.
- Google Lighthouse: ์น ํ์ด์ง์ ์ฑ๋ฅ, ํ์ง ๋ฐ ์ ํ์ฑ์ ๊ฐ์ ํ๊ธฐ ์ํ ์คํ ์์ค ์๋ํ ๋๊ตฌ์ ๋๋ค. Chrome DevTools ๊ธฐ๋ฅ, Node ๋ชจ๋ ๋ฐ ๋ช ๋ น์ค ๋๊ตฌ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
- WebPageTest: ์ ์ธ๊ณ ์ฌ๋ฌ ์์น์์ ์น์ฌ์ดํธ ์๋๋ฅผ ํ ์คํธํ ์ ์๋ ๋งค์ฐ ์ธ์ ๋ฐ๋ ๋ฌด๋ฃ ๋๊ตฌ๋ก, ์ค์ ๋ธ๋ผ์ฐ์ ๋ฐ ํ ์คํธ ๊ตฌ์ฑ์ ์ฌ์ฉํฉ๋๋ค.
- Pingdom Tools: ๋ค์ํ ์์น์์ ์น์ฌ์ดํธ ์๋ ํ ์คํธ๋ฅผ ์ ๊ณตํ๊ณ ์์ธํ ์ฑ๋ฅ ๋ณด๊ณ ์๋ฅผ ์ ๊ณตํฉ๋๋ค.
- GTmetrix: Lighthouse ๋ฐ์ดํฐ๋ฅผ ์์ฒด ๋ถ์๊ณผ ๊ฒฐํฉํ์ฌ ์ฑ๋ฅ ์ ์ ๋ฐ ๊ถ์ฅ ์ฌํญ์ ์ ๊ณตํฉ๋๋ค.
๊ธ๋ก๋ฒ ๊ด์ : ์ด๋ฌํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ ๋ ๋์ ์ ์ฌ ๊ณ ๊ฐ๊ณผ ๊ด๋ จ๋ ์์น์์ ํ ์คํธ๋ฅผ ์๋ฎฌ๋ ์ด์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๋๋จ์์์์ ์๋นํ ์ฌ์ฉ์ ๊ธฐ๋ฐ์ด ์๋ค๋ฉด ์ฑ๊ฐํฌ๋ฅด๋ ๋์ฟ์ ๊ฐ์ ์์น์์ ํ ์คํธํ์ธ์.
2. ์ค์ ์ฌ์ฉ์ ๋ชจ๋ํฐ๋ง (RUM) ๋๊ตฌ
RUM ๋๊ตฌ๋ ์ค์ ์ฌ์ฉ์๊ฐ ์น์ฌ์ดํธ์ ์ํธ ์์ฉํ ๋ ์ง์ ์ฑ๋ฅ ๋ฐ์ดํฐ๋ฅผ ์์งํฉ๋๋ค. ์ด๋ ๋ค์ํ ์ฅ์น, ๋ธ๋ผ์ฐ์ ๋ฐ ๋คํธ์ํฌ ์กฐ๊ฑด์ ๊ฑธ์ณ ์ค์ ์ฑ๋ฅ์ ๋ํ ๊ท์คํ ์ธ์ฌ์ดํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
- Google Analytics (ํ์ด์ง ํ์ด๋ฐ): ์ ์ฉ RUM ๋๊ตฌ๋ ์๋์ง๋ง GA๋ ๊ธฐ๋ณธ ํ์ด์ง ํ์ด๋ฐ ๋ฐ์ดํฐ๋ฅผ ์ ๊ณตํ์ฌ ์์์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
- New Relic: ๊ฐ๋ ฅํ RUM ๊ธฐ๋ฅ์ ํฌํจํ๋ ๊ฐ๋ ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง(APM) ํ๋ซํผ์ ๋๋ค.
- Datadog: RUM์ ํตํ ํ๋ก ํธ์๋ ์ฑ๋ฅ ์ถ์ ์ ํฌํจํ ์๋ํฌ์๋ ๋ชจ๋ํฐ๋ง์ ์ ๊ณตํฉ๋๋ค.
- Dynatrace: RUM์ ํฌํจํ ์ ํ๋ฆฌ์ผ์ด์ ๊ด์ธก ๊ฐ๋ฅ์ฑ์ ์ํ ์ข ํฉ์ ์ธ ํ๋ซํผ์ ๋๋ค.
- Akamai mPulse: ์น ์ฑ๋ฅ ๋ฐ ์ฌ์ฉ์ ๊ฒฝํ ๋ถ์์ ์ค์ ์ ๋ ์ ๋ฌธ RUM ์๋ฃจ์ ์ ๋๋ค.
๊ธ๋ก๋ฒ ๊ด์ : RUM ๋ฐ์ดํฐ๋ ๋ณธ์ง์ ์ผ๋ก ๊ธ๋ก๋ฒํ๋ฉฐ ๋ค์ํ ์ฌ์ฉ์ ๊ธฐ๋ฐ์ ๊ฒฝํ์ ๋ฐ์ํฉ๋๋ค. ํน์ ์ง์ญ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ์ ํํ ํ์ ํ๊ธฐ ์ํด ์ง๋ฆฌ, ์ฅ์น ์ ํ ๋ฐ ๋ธ๋ผ์ฐ์ ๋ณ๋ก ๋ถํ ๋ RUM ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํฉ๋๋ค.
3. ๋ธ๋ผ์ฐ์ ๊ฐ๋ฐ์ ๋๊ตฌ
์น ๋ธ๋ผ์ฐ์ ์ ์ง์ ๋ด์ฅ๋ ์ด๋ฌํ ๋๊ตฌ๋ ๊ฐ๋ฐ ์ค์ ์ฌ์ธต์ ์ธ ๋๋ฒ๊น ๋ฐ ๋ถ์์ ํ์์ ์ ๋๋ค.
- Chrome DevTools (์ฑ๋ฅ, ๋คํธ์ํฌ ํญ): ์์ธํ ํญํฌ์ ์ฐจํธ, CPU ํ๋กํ์ผ๋ง ๋ฐ ๋ฉ๋ชจ๋ฆฌ ๋ถ์์ ์ ๊ณตํฉ๋๋ค.
- Firefox Developer Tools: Chrome DevTools์ ์ ์ฌํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ ์ฑ๋ฅ ๋ถ์ ๋ฐ ๋คํธ์ํฌ ๊ฒ์ฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
- Safari Web Inspector: Apple ์ฅ์น ์ฌ์ฉ์๋ฅผ ์ํ ์ฑ๋ฅ ํ๋กํ์ผ๋ง ๋ฐ ๋คํธ์ํฌ ๋ชจ๋ํฐ๋ง์ ์ ๊ณตํฉ๋๋ค.
์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ: ์ด๋ฌํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ํฉ์ฑ ๋๋ RUM ๋๊ตฌ๋ก ์๋ณ๋ ํน์ ํ์ด์ง ๋ก๋ ๋ฌธ์ ๋ฅผ ์์ธํ ์กฐ์ฌํ์ธ์. ์ฝ๋๋ฅผ ํ๋กํ์ผ๋งํ์ฌ ์ฑ๋ฅ ๋ณ๋ชฉ ํ์์ ์ง์ ์ฐพ์ผ์ธ์.
4. ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง (APM) ๋๊ตฌ
์ข ์ข ๋ฐฑ์๋ ์ฑ๋ฅ์ ์ค์ ์ ๋์ง๋ง ๋ง์ APM ๋๊ตฌ๋ ํ๋ก ํธ์๋ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง ๊ธฐ๋ฅ์ ์ ๊ณตํ๊ฑฐ๋ ํ๋ก ํธ์๋ RUM ์๋ฃจ์ ๊ณผ ์ํํ๊ฒ ํตํฉ๋ฉ๋๋ค.
- Elastic APM: ๋ฐฑ์๋ ๋ฐ ํ๋ก ํธ์๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ชจ๋์ ๋ํ ๋ถ์ฐ ์ถ์ ๋ฐ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง์ ์ ๊ณตํฉ๋๋ค.
- AppDynamics: ํ๋ก ํธ์๋ ์ฑ๋ฅ ์ธ์ฌ์ดํธ๋ฅผ ํฌํจํ๋ ํ์คํ ๊ด์ธก ๊ฐ๋ฅ์ฑ ํ๋ซํผ์ ๋๋ค.
๋์๋ณด๋ ๊ตฌ์ถ: ํ๋ ์ ํ ์ด์ ๋ฐ ๋ถ์
๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ๊ฒ์ ์ฒซ ๋จ๊ณ์ผ ๋ฟ์ ๋๋ค. ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์์ ์ง์ ํ ํ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๊ณ ํด์ํ๋ ๋ฐฉ์์ ์์ต๋๋ค.
1. ๋์๋ณด๋ ๋์์ธ ์์น
- ๋ช ํํ ์๊ฐํ: ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฒ ์ดํดํ ์ ์๋๋ก ์ฐจํธ, ๊ทธ๋ํ ๋ฐ ํํธ๋งต์ ์ฌ์ฉํฉ๋๋ค. ์๊ณ์ด ์ฐจํธ๋ ์ฑ๋ฅ ์ถ์ธ๋ฅผ ์ถ์ ํ๋ ๋ฐ ํ์ํฉ๋๋ค.
- ํต์ฌ ๋ฉํธ๋ฆญ ์ง์ค: ํต์ฌ ์น ๋ฐ์ดํ ๋ฐ ๊ธฐํ ์ค์ํ ์ฑ๋ฅ ์งํ๋ฅผ ๋งจ ์์ ์ฐ์ ์์๋ฅผ ์ง์ ํฉ๋๋ค.
- ์ธ๋ถํ: ์ฌ์ฉ์๊ฐ ์ง๋ฆฌ, ์ฅ์น, ๋ธ๋ผ์ฐ์ ๋ฐ ๊ธฐ๊ฐ๋ณ๋ก ๋ฐ์ดํฐ๋ฅผ ์ธ๋ถํํ์ฌ ํน์ ๋ฌธ์ ์์ญ์ ์๋ณํ ์ ์๋๋ก ํฉ๋๋ค.
- ์ถ์ธ ๋ถ์: ์ต์ ํ์ ์ํฅ์ ์ถ์ ํ๊ณ ํ๊ท๋ฅผ ์๋ณํ๊ธฐ ์ํด ์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ฅธ ์ฑ๋ฅ์ ํ์ํฉ๋๋ค.
- ์ค์ vs. ํฉ์ฑ: ํฉ์ฑ ํ ์คํธ ๊ฒฐ๊ณผ์ ์ค์ ์ฌ์ฉ์ ๋ชจ๋ํฐ๋ง ๋ฐ์ดํฐ ๊ฐ์ ๋ช ํํ๊ฒ ๊ตฌ๋ถํฉ๋๋ค.
- ๊ฒฝ๊ณ : ์ฃผ์ ๋ฉํธ๋ฆญ์ด ํ์ฉ ๊ฐ๋ฅํ ์๊ณ๊ฐ ์๋๋ก ๋จ์ด์ง ๋ ์๋ ๊ฒฝ๊ณ ๋ฅผ ์ค์ ํฉ๋๋ค.
2. ๋ฐ์ดํฐ ํด์
์ซ์์ ์๋ฏธ๋ฅผ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
- ๊ธฐ์ค์ ์ค์ : ํน์ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ๋์ ์ ์ฌ ๊ณ ๊ฐ์๊ฒ '์ข์' ์ฑ๋ฅ์ด ๋ฌด์์ธ์ง ํ์ ํฉ๋๋ค.
- ๋ณ๋ชฉ ํ์ ์๋ณ: ์ผ๊ด๋๊ฒ ์ข์ง ์๊ฑฐ๋ ๋ณ๋์ฑ์ด ๋์ ๋ฉํธ๋ฆญ์ ์ฐพ์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋์ TTFB๋ ์๋ฒ์ธก ๋ฌธ์ ๋ฅผ ๋ํ๋ผ ์ ์์ผ๋ฉฐ, ๋์ FID/INP๋ ๋ฌด๊ฑฐ์ด JavaScript ์คํ์ ๋ํ๋ผ ์ ์์ต๋๋ค.
- ๋ฉํธ๋ฆญ ์๊ด ๊ด๊ณ: ๋ค๋ฅธ ๋ฉํธ๋ฆญ์ด ์๋ก์๊ฒ ์ด๋ป๊ฒ ์ํฅ์ ๋ฏธ์น๋์ง ์ดํดํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ํฐ JavaScript ํ์ด๋ก๋๋ FCP ๋ฐ FID/INP๋ฅผ ์ฆ๊ฐ์ํฌ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค.
- ํจ๊ณผ์ ์ธ ์ธ๋ถํ: ํ๊ท ์ ์คํด์ ์์ง๊ฐ ์์ ์ ์์ต๋๋ค. ์ ์ธ๊ณ์ ์ผ๋ก ๋น ๋ฅธ ์น์ฌ์ดํธ๋ผ๋ ์ธํฐ๋ท ์ธํ๋ผ๊ฐ ์ข์ง ์์ ํน์ ์ง์ญ์ ์ฌ์ฉ์์๊ฒ๋ ๋งค์ฐ ๋๋ฆด ์ ์์ต๋๋ค.
3. ์คํ ๊ฐ๋ฅํ ์ธ์ฌ์ดํธ ๋ฐ ์ต์ ํ ์ ๋ต
๋์๋ณด๋๋ ์กฐ์น๋ฅผ ์ ๋ํด์ผ ํฉ๋๋ค. ์ผ๋ฐ์ ์ธ ์ต์ ํ ์ ๋ต์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
a) ์ด๋ฏธ์ง ์ต์ ํ
- ์ต์ ํ์: ๋ ์์ ํ์ผ ํฌ๊ธฐ์ ๋ ๋์ ์์ถ์ ์ํด WebP ๋๋ AVIF๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ๋ฐ์ํ ์ด๋ฏธ์ง: ๋ค๋ฅธ ๋ทฐํฌํธ ํฌ๊ธฐ์ ์ ํฉํ ํฌ๊ธฐ์ ์ด๋ฏธ์ง๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด `srcset` ๋ฐ `sizes` ์์ฑ์ ์ฌ์ฉํฉ๋๋ค.
- ์ง์ฐ ๋ก๋ฉ: `loading='lazy'`๋ฅผ ์ฌ์ฉํ์ฌ ํ์ํ ๋๊น์ง ํ๋ฉด ์ธ๋ถ์ ์ด๋ฏธ์ง ๋ก๋๋ฅผ ์ฐ๊ธฐํฉ๋๋ค.
- ์์ถ: ํ์ง ์์ค ์์ด ์ด๋ฏธ์ง๋ฅผ ์ ์ ํ๊ฒ ์์ถํฉ๋๋ค.
b) JavaScript ์ต์ ํ
- ์ฝ๋ ๋ถํ : ํฐ JavaScript ๋ฒ๋ค์ ์จ๋๋งจ๋๋ก ๋ก๋ํ ์ ์๋ ๋ ์์ ์ฒญํฌ๋ก ๋ถํ ํฉ๋๋ค.
- ์ง์ฐ/๋น๋๊ธฐ: JavaScript๊ฐ HTML ๊ตฌ๋ฌธ ๋ถ์์ ์ฐจ๋จํ์ง ์๋๋ก ์คํฌ๋ฆฝํธ ํ๊ทธ์ `defer` ๋๋ `async` ์์ฑ์ ์ฌ์ฉํฉ๋๋ค.
- ํธ๋ฆฌ ์์ดํน: JavaScript ๋ฒ๋ค์์ ์ฌ์ฉ๋์ง ์๋ ์ฝ๋๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
- ํ์ฌ ์คํฌ๋ฆฝํธ ์ต์ํ: ๋ชจ๋ ํ์ฌ ์คํฌ๋ฆฝํธ(์: ๋ถ์, ๊ด๊ณ , ์์ ฏ)์ ํ์์ฑ๊ณผ ์ฑ๋ฅ ์ํฅ์ ํ๊ฐํฉ๋๋ค.
- ์ด๋ฒคํธ ํธ๋ค๋ฌ ์ต์ ํ: ๊ณผ๋ํ ํจ์ ํธ์ถ์ ํผํ๊ธฐ ์ํด ์ด๋ฒคํธ ๋ฆฌ์ค๋๋ฅผ ๋๋ฐ์ด์คํ๊ณ ์ค๋กํํฉ๋๋ค.
c) CSS ์ต์ ํ
- ์ค์ CSS: FCP๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด ์๋จ ์ฝํ ์ธ ์ ํ์ํ ์ค์ CSS๋ฅผ ์ธ๋ผ์ธ์ผ๋ก ํฌํจํฉ๋๋ค.
- ์ต์ํ: CSS ํ์ผ์์ ๋ถํ์ํ ๋ฌธ์๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
- ์ฌ์ฉ๋์ง ์๋ CSS ์ ๊ฑฐ: ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ๋์ง ์๋ CSS ๊ท์น์ ์๋ณํ๊ณ ์ ๊ฑฐํ ์ ์์ต๋๋ค.
d) ์บ์ฑ ์ ๋ต
- ๋ธ๋ผ์ฐ์ ์บ์ฑ: ์ ์ ์์ฐ์ ์ ์ ํ `Cache-Control` ํค๋๋ฅผ ์ค์ ํฉ๋๋ค.
- CDN ์บ์ฑ: ์ฌ์ฉ์์ ๋ ๊ฐ๊น์ด ์ฃ์ง ์์น์์ ์์ฐ์ ์ ๊ณตํ๊ธฐ ์ํด ์ฝํ ์ธ ์ ์ก ๋คํธ์ํฌ(CDN)๋ฅผ ํ์ฉํฉ๋๋ค.
- ์๋ฒ์ธก ์บ์ฑ: ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ก๋๋ฅผ ์ค์ด๊ณ ์๋ต ์๊ฐ์ ๋จ์ถํ๊ธฐ ์ํด ์๋ฒ(์: Varnish, Redis)์ ์บ์ฑ ๋ฉ์ปค๋์ฆ์ ๊ตฌํํฉ๋๋ค.
e) ์๋ฒ ๋ฐ ๋คํธ์ํฌ ์ต์ ํ
- HTTP/2 ๋๋ HTTP/3: ๋ค์คํ ๋ฐ ํค๋ ์์ถ์ ์ํด ์ด๋ฌํ ์ต์ ํ๋กํ ์ฝ์ ํ์ฉํฉ๋๋ค.
- Gzip/Brotli ์์ถ: ํ ์คํธ ๊ธฐ๋ฐ ์์ฐ์ด ์์ถ๋์๋์ง ํ์ธํฉ๋๋ค.
- ์๋ฒ ์๋ต ์๊ฐ (TTFB) ์ค์ด๊ธฐ: ๋ฐฑ์๋ ์ฝ๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฟผ๋ฆฌ ๋ฐ ์๋ฒ ๊ตฌ์ฑ์ ์ต์ ํํฉ๋๋ค.
- DNS ์ฌ์ ์ฐ๊ฒฐ: ``๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฑ๊ทธ๋ผ์ด๋์์ ๋๋ฉ์ธ ์ด๋ฆ์ ํ์ธํฉ๋๋ค.
f) ๊ธ๊ผด ์ต์ ํ
- ์ต์ ํ์: ์ต์ ์ ์์ถ์ ์ํด WOFF2๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ์ค์ ๊ธ๊ผด ๋ฏธ๋ฆฌ ๋ก๋: ์๋จ ์ฝํ ์ธ ์ ํ์ํ ๊ธ๊ผด์ ๋ํด ``๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ๊ธ๊ผด ์๋ธ์ธํ : ํน์ ์ธ์ด ๋ฐ ์ฝํ ์ธ ์ ํ์ํ ๋ฌธ์๋ง ํฌํจํฉ๋๋ค.
๊ด์ธก์๋ฅผ ์ํ ๊ธ๋ก๋ฒ ๊ณ ๋ ค ์ฌํญ
๊ธ๋ก๋ฒ ์ ์ฌ ๊ณ ๊ฐ์ ์ํด ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์๋ฅผ ๊ตฌ์ถํ๊ณ ํ์ฉํ ๋ ๋ค์ ์์๋ฅผ ์ผ๋์ ๋์ญ์์ค.
- ๋ค์ํ ๋คํธ์ํฌ ์กฐ๊ฑด: ๋ค๋ฅธ ๊ตญ๊ฐ์ ์ฌ์ฉ์๋ ๋ค์ํ ์ธํฐ๋ท ์๋์ ์์ ์ฑ์ ๊ฒฝํํ๊ฒ ๋ฉ๋๋ค. RUM ๋ฐ์ดํฐ๊ฐ ์ฌ๊ธฐ์ ์ค์ํฉ๋๋ค.
- ์ฅ์น ํํธํ: ๋ง์ ์ง์ญ์์๋ ๋ชจ๋ฐ์ผ ์ฅ์น, ์ ๊ฐํ ํ๋์จ์ด ๋ฐ ์ด์ ๋ธ๋ผ์ฐ์ ๊ฐ ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฌํ ์๋๋ฆฌ์ค์ ๋ํด ํ ์คํธํ๊ณ ์ต์ ํํ์ญ์์ค.
- ์ฝํ ์ธ ํ์งํ: ์ฌ์ดํธ๊ฐ ํ์งํ๋ ์ฝํ ์ธ (์: ๋ค๋ฅธ ์ธ์ด, ํตํ)๋ฅผ ์ ๊ณตํ๋ ๊ฒฝ์ฐ ์ด๋ฌํ ํน์ ๋ฒ์ ๋ ์ฑ๋ฅ์ด ์ฐ์ํ์ง ํ์ธํ์ญ์์ค.
- CDN ์ ๋ต: ์ ๊ตฌ์ฑ๋ CDN์ ์ ์ธ๊ณ์ ์ผ๋ก ์์ฐ์ ๋น ๋ฅด๊ฒ ์ ๊ณตํ๋ ๋ฐ ํ์์ ์ ๋๋ค. ๋์ ์ง์ญ์ ๊ฐ๋ ฅํ ์ ์ง๋ฅผ ๊ฐ์ง CDN์ ์ ํํ์ญ์์ค.
- ์๊ฐ๋ ์ฐจ์ด: ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ ๋ ํผํฌ ์ฌ์ฉ ์๊ฐ๊ณผ ํด๋น ๊ธฐ๊ฐ ๋์์ ์ ์ฌ์ ์ธ ์ฑ๋ฅ ์ํฅ์ ์ดํดํ๊ธฐ ์ํด ์๊ฐ๋๋ฅผ ๊ณ ๋ คํ์ญ์์ค.
- ์ ๊ทผ์ฑ ํ์ค: ์๊ฒฉํ๊ฒ ์ฑ๋ฅ ๋ฉํธ๋ฆญ์ ์๋์ง๋ง ์ฌ์ดํธ๊ฐ ์ ๊ทผ ๊ฐ๋ฅํ๋๋ก ๋ณด์ฅํ๋ฉด ์ข ์ข ๊นจ๋ํ ์ฝ๋์ ํจ์จ์ ์ธ ๋ฆฌ์์ค ๋ก๋ฉ์ด ํฌํจ๋๋ฉฐ ์ด๋ ๊ฐ์ ์ ์ผ๋ก ์ฑ๋ฅ์ ๋์์ด ๋ฉ๋๋ค.
์ฑ๋ฅ ๋ฌธํ ๊ตฌ์ถ
ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์๋ ๋จ์ํ ๋๊ตฌ๊ฐ ์๋๋ผ ์กฐ์ง ๋ด์์ ์ฑ๋ฅ ์ค์ฌ ๋ฌธํ๋ฅผ ์ก์ฑํ๋ ์ด๋งค์ ์ ๋๋ค. ๊ฐ๋ฐ, QA ๋ฐ ์ ํ ํ ๊ฐ์ ํ์ ์ ์ฅ๋ คํฉ๋๋ค. ์ด๊ธฐ ์ค๊ณ ๋ฐ ์ํคํ ์ฒ๋ถํฐ ์ง์์ ์ธ ์ ์ง ๊ด๋ฆฌ ๋ฐ ๊ธฐ๋ฅ ๋ฆด๋ฆฌ์ค์ ์ด๋ฅด๊ธฐ๊น์ง ์ ์ฒด ๊ฐ๋ฐ ์๋ช ์ฃผ๊ธฐ ๋์ ์ฑ๋ฅ์ ํต์ฌ ๊ณ ๋ ค ์ฌํญ์ผ๋ก ๋ง๋์ญ์์ค.
๋์๋ณด๋๋ฅผ ์ ๊ธฐ์ ์ผ๋ก ๊ฒํ ํ๊ณ , ํ ํ์์์ ์ฑ๋ฅ ๋ฉํธ๋ฆญ์ ๋ ผ์ํ๊ณ , ์ฑ๋ฅ ํฅ์์ ์ถํํ์ญ์์ค. ํ๋ก ํธ์๋ ์ฑ๋ฅ์ ์ฐ์ ์ํจ์ผ๋ก์จ ๋ ๋์ ์ฌ์ฉ์ ๊ฒฝํ, ๋ ๊ฐ๋ ฅํ ๋ธ๋๋ ์ถฉ์ฑ๋, ๊ถ๊ทน์ ์ผ๋ก๋ ๊ธ๋ก๋ฒ ์ ์ฌ ๊ณ ๊ฐ์ ์ํ ๋ ์ฑ๊ณต์ ์ธ ์จ๋ผ์ธ ์ ์ฒด์ ํฌ์ํ๋ ๊ฒ์ ๋๋ค.
๊ฒฐ๋ก
ํฌ๊ด์ ์ธ ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์๋ ๊ธ๋ก๋ฒ ๋์งํธ ๊ฒฝ๊ธฐ์ฅ์์ ํ์ํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ๊ณ ์ ํ๋ ๋ชจ๋ ์กฐ์ง์๊ฒ ํ์์ ์ธ ์์ฐ์ ๋๋ค. ํต์ฌ ์น ๋ฐ์ดํ, ํ์ด์ง ๋ก๋ ์๊ฐ, ๋ ๋๋ง ๋ฐ ๋คํธ์ํฌ ๋ฆฌ์์ค์ ๊ฑธ์ณ ํต์ฌ ๋ฉํธ๋ฆญ์ ๋ถ์ง๋ฐํ ์ถ์ ํ๊ณ ๊ฐ๋ ฅํ ๋ชจ๋ํฐ๋ง ๋๊ตฌ ์ธํธ๋ฅผ ํ์ฉํจ์ผ๋ก์จ ์ฑ๋ฅ ๋ณ๋ชฉ ํ์์ ์๋ณํ๊ณ ํด๊ฒฐํ๋ ๋ฐ ํ์ํ ์ธ์ฌ์ดํธ๋ฅผ ์ป์ ์ ์์ต๋๋ค.
์ด๋ฏธ์ง ๋ฐ JavaScript ์ต์ ํ๋ถํฐ ๊ณ ๊ธ ์บ์ฑ ๋ฐ ๋คํธ์ํฌ ๊ฐ์ ์ ์ด๋ฅด๊ธฐ๊น์ง ์ค๋ช ๋ ์คํ ๊ฐ๋ฅํ ์ ๋ต์ ํตํด ํ๋ก ํธ์๋๋ฅผ ์ธ๋ฐํ๊ฒ ์กฐ์ ํ ์ ์์ต๋๋ค. ํญ์ ๊ธ๋ก๋ฒ ์ฌ์ฉ์ ๊ธฐ๋ฐ์ ๋ค์ํ ์๊ตฌ ์ฌํญ๊ณผ ์กฐ๊ฑด์ ๊ณ ๋ คํ์ญ์์ค. ๊ฐ๋ฐ DNA์ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง ๋ฐ ์ต์ ํ๋ฅผ ํตํฉํจ์ผ๋ก์จ ๋ ๋น ๋ฅด๊ณ , ๋ ๋งค๋ ฅ์ ์ด๋ฉฐ, ๋ ์ฑ๊ณต์ ์ธ ์ ์ธ๊ณ์ ์ธ ์น ์ ์ฒด๋ฅผ ์ํ ๊ธธ์ ๋ฆ์ต๋๋ค.
์ง๊ธ ๋ฐ๋ก ํ๋ก ํธ์๋ ์ฑ๋ฅ ๊ด์ธก์ ๊ตฌ์ถ์ ์์ํ๊ณ ์น์ฌ์ดํธ์ ์ ์ฌ๋ ฅ์ ์ต๋ํ ๋ฐํํ์ญ์์ค!