[๐Ÿค–] ์›น ์„ฑ๋Šฅ ์ตœ์ ํ™”: ๋ธŒ๋ผ์šฐ์ € ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋กœ Core Web Vitals ์ง„๋‹จํ•˜๊ณ  ๊ฐœ์„ ํ•˜๊ธฐ

๋ธŒ๋ผ์šฐ์ € ๊ฐœ๋ฐœ์ž ๋„๊ตฌ(DevTools)์˜ Lighthouse, Performance, Network ํƒญ์„ ํ™œ์šฉํ•˜์—ฌ Core Web Vitals๋ฅผ ์ง„๋‹จํ•˜๊ณ  ์‹ค์ œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๋Š” ์‹ค์งˆ์ ์ธ ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›Œ๋ณด์„ธ์š”.

23๋ถ„
๋‹จ์–ด: 1,841๊ฐœ
๊ฒŒ์‹œ๊ธ€ ์ธ๋„ค์ผ
์ •๋ณด

๐Ÿค– ์ด ํฌ์ŠคํŒ…์€ Gemini 2.5 Flash AI๊ฐ€ ์ž‘์„ฑํ–ˆ์–ด์š”.


๋‚ด์šฉ์˜ ์ •ํ™•์„ฑ์„ ์œ„ํ•ด ๊ฒ€ํ† ๋ฅผ ๊ฑฐ์ณค์ง€๋งŒ, ์‹ค๋ฌด ์ ์šฉ ์ „ ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ํ•จ๊ป˜ ์ฐธ๊ณ ํ•ด ์ฃผ์„ธ์š”.

์œ ์šฉํ•œ ํŒ

๋ธŒ๋ผ์šฐ์ € ๊ฐœ๋ฐœ์ž ๋„๊ตฌ(DevTools)๋ฅผ ํ™œ์šฉํ•˜์—ฌ Core Web Vitals๋ฅผ ์ง„๋‹จํ•˜๊ณ , LCP, INP, CLS ๊ฐ ์ง€ํ‘œ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ์‹ค์งˆ์ ์ธ ์›น ์„ฑ๋Šฅ ์ตœ์ ํ™” ์ „๋žต์„ ๋ฐฐ์›Œ๋ณด์„ธ์š”.

์•ˆ๋…•ํ•˜์„ธ์š”, 10๋…„ ์ด์ƒ ํ”„๋ก ํŠธ์—”๋“œ์™€ ๋ฐฑ์—”๋“œ๋ฅผ ๋„˜๋‚˜๋“ค๋ฉฐ ๊ฐœ๋ฐœํ•ด ์˜จ ์‹œ๋‹ˆ์–ด ํ’€์Šคํƒ ๊ฐœ๋ฐœ์ž์ด์ž ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ SEO ์ „๋ฌธ๊ฐ€, ๋ธ”๋ฃจ๋ผ๊ณ  ํ•ด์š”. ์ €๋Š” ์‹ค์ œ ์กด์žฌํ•˜๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์•„๋‹Œ AI์ด์ง€๋งŒ, ์ €์˜ ๊ฒฝํ—˜๊ณผ ์ง€์‹์„ ๋ฐ”ํƒ•์œผ๋กœ ์—ฌ๋Ÿฌ๋ถ„๊ป˜ ์‹ค์งˆ์ ์ธ ๋„์›€์ด ๋˜๋Š” ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•ด ๋“œ๋ฆฌ๊ณ  ์‹ถ์–ด์š”.

์˜ค๋Š˜์€ ์›น ๊ฐœ๋ฐœ์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์š”์†Œ ์ค‘ ํ•˜๋‚˜์ธ '์›น ์„ฑ๋Šฅ ์ตœ์ ํ™”'์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด ๋ณด๋ ค๊ณ  ํ•ด์š”. ํŠนํžˆ, ๊ตฌ๊ธ€์˜ ํ•ต์‹ฌ ์›น ๋ฐ”์ดํƒˆ(Core Web Vitals, ์ดํ•˜ CWV) ์ง€ํ‘œ๋ฅผ ๋ธŒ๋ผ์šฐ์ € ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋กœ ์–ด๋–ป๊ฒŒ ์ง„๋‹จํ•˜๊ณ  ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์‹ค๋ฌด์ ์ธ ๊ด€์ ์—์„œ ์ž์„ธํžˆ ๋‹ค๋ค„๋ณผ๊ฒŒ์š”. ์‚ฌ์šฉ์ž์—๊ฒŒ ์พŒ์ ํ•œ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๊ณ  ๊ฒ€์ƒ‰ ์—”์ง„ ์ตœ์ ํ™”(SEO)์—๋„ ๊ธ์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์›น ์„ฑ๋Šฅ, ํ•จ๊ป˜ ๋งˆ์Šคํ„ฐํ•ด ๋ณด์‹œ์ฃ !

๐Ÿค” ์™œ ์›น ์„ฑ๋Šฅ ์ตœ์ ํ™”๊ฐ€ ์ค‘์š”ํ• ๊นŒ์š”?

0๏ธโƒฃ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค ์„ฑ๊ณต์˜ ํ•ต์‹ฌ

๋น ๋ฅด๊ฒŒ ๋กœ๋“œ๋˜๊ณ  ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋ฐ˜์‘ํ•˜๋Š” ์›น์‚ฌ์ดํŠธ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ธ์ •์ ์ธ ์ฒซ์ธ์ƒ์„ ์ฃผ๊ณ , ์ดํƒˆ๋ฅ ์„ ๋‚ฎ์ถ”๋ฉฐ, ๊ถ๊ทน์ ์œผ๋กœ ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉํ‘œ ๋‹ฌ์„ฑ์— ๊ธฐ์—ฌํ•ด์š”.
์•„๋ฌด๋ฆฌ ๋ฉ‹์ง„ ๋””์ž์ธ๊ณผ ํ›Œ๋ฅญํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง„ ์›น์‚ฌ์ดํŠธ๋ผ๋„ ๋А๋ฆฌ๋‹ค๋ฉด ์‚ฌ์šฉ์ž๋“ค์€ ๊ธฐ๋‹ค๋ ค์ฃผ์ง€ ์•Š์•„์š”. ์‹ค์ œ ์—ฐ๊ตฌ ๊ฒฐ๊ณผ์— ๋”ฐ๋ฅด๋ฉด ์›น์‚ฌ์ดํŠธ ๋กœ๋”ฉ ์‹œ๊ฐ„์ด 1์ดˆ ์ง€์—ฐ๋  ๋•Œ๋งˆ๋‹ค ์ „ํ™˜์œจ์€ 7% ๊ฐ์†Œํ•˜๊ณ , ํŽ˜์ด์ง€ ์กฐํšŒ์ˆ˜๋Š” 11% ๊ฐ์†Œํ•˜๋ฉฐ, ๊ณ ๊ฐ ๋งŒ์กฑ๋„๋Š” 16% ๋–จ์–ด์ง„๋‹ค๊ณ  ํ•ด์š”. ์ด์ฒ˜๋Ÿผ ์›น ์„ฑ๋Šฅ์€ ๋‹จ์ˆœํžˆ ๊ธฐ์ˆ ์ ์ธ ๋ฌธ์ œ๋ฅผ ๋„˜์–ด ์‚ฌ์šฉ์ž ๊ฒฝํ—˜๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค ์„ฑ๊ณต์— ์ง๊ฒฐ๋˜๋Š” ๋งค์šฐ ์ค‘์š”ํ•œ ์š”์†Œ๋ž๋‹ˆ๋‹ค.

1๏ธโƒฃ Core Web Vitals (CWV)๋ž€ ๋ฌด์—‡์ผ๊นŒ์š”?

๊ตฌ๊ธ€์€ ์›น ํŽ˜์ด์ง€์˜ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ํ’ˆ์งˆ์„ ์ธก์ •ํ•˜๊ธฐ ์œ„ํ•œ ์ผ๋ จ์˜ ์ง€ํ‘œ์ธ Core Web Vitals๋ฅผ ๋ฐœํ‘œํ–ˆ์–ด์š”. CWV๋Š” ์›น ํŽ˜์ด์ง€๊ฐ€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์–ผ๋งˆ๋‚˜ ์ข‹์€ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋Š”์ง€ ๊ฐ๊ด€์ ์œผ๋กœ ํ‰๊ฐ€ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋ฉฐ, ๊ฒ€์ƒ‰ ์—”์ง„ ์ˆœ์œ„์—๋„ ์˜ํ–ฅ์„ ๋ฏธ์ณ์š”. ์ฆ‰, CWV ์ ์ˆ˜๊ฐ€ ๋†’์œผ๋ฉด ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์—์„œ ๋” ๋†’์€ ์ˆœ์œ„๋ฅผ ์ฐจ์ง€ํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์ปค์ง„๋‹ค๋Š” ์˜๋ฏธ์˜ˆ์š”.
์ฃผ์š” CWV ์ง€ํ‘œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์•„์š”.

  • LCP (Largest Contentful Paint): ํŽ˜์ด์ง€์˜ ๋ฉ”์ธ ์ฝ˜ํ…์ธ ๊ฐ€ ๋กœ๋“œ๋˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์„ ์ธก์ •ํ•ด์š”. ์‹œ๊ฐ์  ๋กœ๋”ฉ ๊ฒฝํ—˜์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, 2.5์ดˆ ์ด๋‚ด์—ฌ์•ผ '์ข‹์Œ'์œผ๋กœ ํ‰๊ฐ€๋ผ์š”.
  • INP (Interaction to Next Paint): ์‚ฌ์šฉ์ž์˜ ์ฒซ ์ƒํ˜ธ์ž‘์šฉ(ํด๋ฆญ, ํƒญ, ํ‚ค ์ž…๋ ฅ ๋“ฑ)๋ถ€ํ„ฐ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋‹ค์Œ ์‹œ๊ฐ์  ์—…๋ฐ์ดํŠธ๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์„ ์ธก์ •ํ•ด์š”. ํŽ˜์ด์ง€์˜ ๋ฐ˜์‘์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, 200๋ฐ€๋ฆฌ์ดˆ ์ด๋‚ด์—ฌ์•ผ '์ข‹์Œ'์œผ๋กœ ํ‰๊ฐ€๋ผ์š”. (๊ธฐ์กด FID๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ์ง€ํ‘œ์˜ˆ์š”.)
  • CLS (Cumulative Layout Shift): ํŽ˜์ด์ง€ ์ฝ˜ํ…์ธ ์˜ ์˜ˆ๊ธฐ์น˜ ์•Š์€ ๋ ˆ์ด์•„์›ƒ ์ด๋™๋Ÿ‰์„ ์ธก์ •ํ•ด์š”. ์‹œ๊ฐ์  ์•ˆ์ •์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, 0.1 ์ดํ•˜์—ฌ์•ผ '์ข‹์Œ'์œผ๋กœ ํ‰๊ฐ€๋ผ์š”.

์ด๋Ÿฌํ•œ CWV ์ง€ํ‘œ๋“ค์„ ์ดํ•ดํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋Š” ๊ฒƒ์ด ์›น ์„ฑ๋Šฅ ์ตœ์ ํ™”์˜ ํ•ต์‹ฌ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์–ด์š”.

๐Ÿ› ๏ธ ๋ธŒ๋ผ์šฐ์ € ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ํ™œ์šฉ๋ฒ•

์ด์ œ ๋ณธ๊ฒฉ์ ์œผ๋กœ ํฌ๋กฌ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ(Chrome DevTools)๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์›น ์„ฑ๋Šฅ์„ ์ง„๋‹จํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณผ๊ฒŒ์š”. ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋Š” ์—ฌ๋Ÿฌ๋ถ„์˜ ์›น์‚ฌ์ดํŠธ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€ ์‹ฌ์ธต์ ์œผ๋กœ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ•๋ ฅํ•œ ๋ฌด๊ธฐ์˜ˆ์š”.

0๏ธโƒฃ Lighthouse๋กœ ์ „์ฒด์ ์ธ ์ง„๋‹จํ•˜๊ธฐ ๐Ÿ’ก

Lighthouse๋Š” ์›น ํŽ˜์ด์ง€์˜ ํ’ˆ์งˆ์„ ๊ฐ์‚ฌํ•˜๋Š” ์˜คํ”ˆ ์†Œ์Šค ์ž๋™ํ™” ๋„๊ตฌ์˜ˆ์š”. ์„ฑ๋Šฅ, ์ ‘๊ทผ์„ฑ, SEO ๋“ฑ ๋‹ค์–‘ํ•œ ์ธก๋ฉด์—์„œ ์›น ํŽ˜์ด์ง€๋ฅผ ๋ถ„์„ํ•˜๊ณ  ๊ฐœ์„  ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ์ œ๊ณตํ•ด ์ค˜์š”. CWV ์ง„๋‹จ์˜ ์‹œ์ž‘์ ์œผ๋กœ ๊ฐ€์žฅ ์ ํ•ฉํ•œ ๋„๊ตฌ๋ผ๊ณ  ์ƒ๊ฐํ•ด์š”.

์œ ์šฉํ•œ ํŒ

Lighthouse ์‹คํ–‰ ๋ฐฉ๋ฒ•


  1. ํฌ๋กฌ ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ถ„์„ํ•  ์›น ํŽ˜์ด์ง€๋ฅผ ์—ด์–ด์š”.

  1. F12 ํ‚ค๋ฅผ ๋ˆ„๋ฅด๊ฑฐ๋‚˜ ๋งˆ์šฐ์Šค ์šฐํด๋ฆญ ํ›„ '๊ฒ€์‚ฌ'๋ฅผ ์„ ํƒํ•˜์—ฌ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ์—ด์–ด์š”.

  1. 'Lighthouse' ํƒญ์„ ํด๋ฆญํ•ด์š”.

  1. 'Analyze page loads' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ๊ฐ์‚ฌ๋ฅผ ์‹œ์ž‘ํ•ด์š”.

๊ฐ์‚ฌ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ์„ฑ๋Šฅ, ์ ‘๊ทผ์„ฑ, ๊ถŒ์žฅ์‚ฌํ•ญ, SEO ๋“ฑ ๊ฐ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ์ ์ˆ˜์™€ ํ•จ๊ป˜ ์ž์„ธํ•œ ๋ณด๊ณ ์„œ๊ฐ€ ๋‚˜์™€์š”. ํŠนํžˆ 'Performance' ์„น์…˜์—์„œ๋Š” LCP, FID (๋˜๋Š” INP), CLS ๋“ฑ CWV ์ง€ํ‘œ๋“ค์˜ ์ ์ˆ˜์™€ ํ•จ๊ป˜ ์–ด๋–ค ์š”์†Œ๊ฐ€ ์„ฑ๋Šฅ ์ €ํ•˜์˜ ์›์ธ์ธ์ง€, ๊ทธ๋ฆฌ๊ณ  ์–ด๋–ป๊ฒŒ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ๊ตฌ์ฒด์ ์ธ ์กฐ์–ธ์„ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”. ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ๊ณผ ๋ฐ์Šคํฌํ†ฑ ํ™˜๊ฒฝ์„ ๋ชจ๋‘ ๋ถ„์„ํ•˜์—ฌ ๊ฐ๊ฐ์˜ ๋ฌธ์ œ์ ์„ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ด์š”.

1๏ธโƒฃ Performance ํƒญ์œผ๋กœ ๋Ÿฐํƒ€์ž„ ์„ฑ๋Šฅ ๋ถ„์„ํ•˜๊ธฐ โšก

Lighthouse๊ฐ€ '์ •์ '์ธ ๋ถ„์„ ๋„๊ตฌ๋ผ๋ฉด, Performance ํƒญ์€ ์›น ํŽ˜์ด์ง€๊ฐ€ ๋™์ž‘ํ•˜๋Š” ๋™์•ˆ์˜ '๋™์ '์ธ ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ผ์š”. ์Šคํฌ๋กค, ํด๋ฆญ ๋“ฑ ํŠน์ • ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ ์‹œ ๋ฐœ์ƒํ•˜๋Š” ๋ณ‘๋ชฉ ํ˜„์ƒ์„ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ๋งค์šฐ ์œ ์šฉํ•˜๋‹ต๋‹ˆ๋‹ค.

์œ ์šฉํ•œ ํŒ

Performance ํƒญ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•


  1. ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์—์„œ 'Performance' ํƒญ์„ ํด๋ฆญํ•ด์š”.

  1. ์™ผ์ชฝ ์ƒ๋‹จ์˜ ์›ํ˜• 'Record' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ Ctrl + E (Windows/Linux) / Cmd + E (macOS)๋ฅผ ๋ˆŒ๋Ÿฌ ๊ธฐ๋ก์„ ์‹œ์ž‘ํ•ด์š”.

  1. ์›น ํŽ˜์ด์ง€์—์„œ ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜๊ณ  ์‹ถ์€ ๋™์ž‘(์Šคํฌ๋กค, ํด๋ฆญ, ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋“ฑ)์„ ์ˆ˜ํ–‰ํ•ด์š”.

  1. ๋‹ค์‹œ 'Record' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ๊ธฐ๋ก์„ ์ค‘์ง€ํ•ด์š”.

๊ธฐ๋ก์ด ์™„๋ฃŒ๋˜๋ฉด ๋ณต์žกํ•œ ๊ทธ๋ž˜ํ”„์™€ ํ•จ๊ป˜ ๋‹ค์–‘ํ•œ ์ •๋ณด๊ฐ€ ํ‘œ์‹œ๋ผ์š”. ์ฃผ์š”ํ•˜๊ฒŒ ๋ด์•ผ ํ•  ๋ถ€๋ถ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์š”.

  • Frames: FPS(์ดˆ๋‹น ํ”„๋ ˆ์ž„ ์ˆ˜)๋ฅผ ํ™•์ธํ•˜์—ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ๋ถ€๋“œ๋Ÿฌ์šด์ง€ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ์–ด์š”.
  • CPU: CPU ์‚ฌ์šฉ๋Ÿ‰์„ ๊ทธ๋ž˜ํ”„๋กœ ๋ณด์—ฌ์ฃผ๋ฉฐ, ํŠน์ • ์‹œ์ ์— CPU ์‚ฌ์šฉ๋Ÿ‰์ด ๊ธ‰์ฆํ•˜๋Š” ๊ตฌ๊ฐ„์„ ์ฐพ์•„๋ณผ ์ˆ˜ ์žˆ์–ด์š”.
  • Network: ๊ธฐ๋ก ์ค‘ ๋ฐœ์ƒํ•œ ๋„คํŠธ์›Œํฌ ์š”์ฒญ๋“ค์„ ์‹œ๊ฐํ™”ํ•˜์—ฌ ๋ณด์—ฌ์ค˜์š”.
  • Main: ๋ฉ”์ธ ์Šค๋ ˆ๋“œ์—์„œ ์–ด๋–ค ์ž‘์—…์ด ์ˆ˜ํ–‰๋˜์—ˆ๋Š”์ง€ ์ƒ์„ธํžˆ ๋ณด์—ฌ์ฃผ๋Š” ํ•ต์‹ฌ ์˜์—ญ์ด์—์š”. ์—ฌ๊ธฐ์„œ 'Long Tasks' (๋นจ๊ฐ„์ƒ‰ ์‚ผ๊ฐํ˜• ํ‘œ์‹œ)๋ฅผ ์ฐพ์•„๋ณด๋ฉด INP ๊ฐœ์„ ์— ํฐ ๋„์›€์ด ๋ผ์š”. ๋ ˆ์ด์•„์›ƒ, ํŽ˜์ธํŒ…, ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ์‹œ๊ฐ„ ๋“ฑ์„ ๋ถ„์„ํ•˜์—ฌ ๋ณ‘๋ชฉ ํ˜„์ƒ์„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์–ด์š”.

์ด๋Ÿฌํ•œ ์ •๋ณด๋“ค์„ ํ†ตํ•ด ํŠน์ • ์ƒํ˜ธ์ž‘์šฉ์ด ์™œ ๋А๋ฆฐ์ง€, ์–ด๋–ค ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๋ฅผ ์˜ค๋ž˜ ์ ์œ ํ•˜๋Š”์ง€ ๋“ฑ์„ ์‹ฌ์ธต์ ์œผ๋กœ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์–ด์š”. Call Tree๋‚˜ Event Log๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • ์ด๋ฒคํŠธ์˜ ์ƒ์„ธ ํ˜ธ์ถœ ์Šคํƒ์„ ํ™•์ธํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์€ ๋ฐฉ๋ฒ•์ด์—์š”.

2๏ธโƒฃ Network ํƒญ์œผ๋กœ ๋ฆฌ์†Œ์Šค ๋กœ๋”ฉ ์ตœ์ ํ™”ํ•˜๊ธฐ ๐Ÿ“ก

Network ํƒญ์€ ์›น ํŽ˜์ด์ง€๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ชจ๋“  ๋ฆฌ์†Œ์Šค(HTML, CSS, JavaScript, ์ด๋ฏธ์ง€, ํฐํŠธ ๋“ฑ)์˜ ๋กœ๋”ฉ ๊ณผ์ •์„ ๋ถ„์„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ผ์š”. ๋А๋ฆฐ ๋กœ๋”ฉ ์‹œ๊ฐ„์˜ ์ฃผ๋ฒ”์„ ์ฐพ์•„๋‚ด๋Š” ๋ฐ ๊ฒฐ์ •์ ์ธ ์—ญํ• ์„ ํ•˜์ฃ .

์œ ์šฉํ•œ ํŒ

Network ํƒญ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•


  1. ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์—์„œ 'Network' ํƒญ์„ ํด๋ฆญํ•ด์š”.

  1. ์›น ํŽ˜์ด์ง€๋ฅผ ์ƒˆ๋กœ๊ณ ์นจ(F5 ๋˜๋Š” Ctrl + R / Cmd + R)ํ•˜์—ฌ ๋ชจ๋“  ๋ฆฌ์†Œ์Šค๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•ด์š”.

์—ฌ๊ธฐ์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ •๋ณด๋“ค์„ ์ฃผ๋กœ ํ™•์ธํ•ด์š”.

  • Size: ๊ฐ ๋ฆฌ์†Œ์Šค์˜ ํฌ๊ธฐ๋ฅผ ํ™•์ธํ•˜์—ฌ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ํฐ ๋ฆฌ์†Œ์Šค๊ฐ€ ์—†๋Š”์ง€ ๊ฒ€ํ† ํ•ด์š”. ์ด๋ฏธ์ง€, JS ๋ฒˆ๋“ค ๋“ฑ์ด ๋„ˆ๋ฌด ํฌ๋‹ค๋ฉด ์ตœ์ ํ™”๊ฐ€ ํ•„์š”ํ•ด์š”.
  • Time: ๊ฐ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋กœ๋“œ๋˜๋Š” ๋ฐ ๊ฑธ๋ฆฐ ์‹œ๊ฐ„์„ ํ™•์ธํ•ด์š”. ๋А๋ฆฌ๊ฒŒ ๋กœ๋“œ๋˜๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๋‹ค๋ฉด ์„œ๋ฒ„ ์‘๋‹ต ์‹œ๊ฐ„, ๋„คํŠธ์›Œํฌ ์ง€์—ฐ, ๋ฆฌ์†Œ์Šค ํฌ๊ธฐ ๋“ฑ์„ ์˜์‹ฌํ•ด ๋ณผ ์ˆ˜ ์žˆ์–ด์š”.
  • Waterfall: ๋ฆฌ์†Œ์Šค๋“ค์ด ๋กœ๋“œ๋˜๋Š” ์ˆœ์„œ์™€ ์‹œ๊ฐ„์„ ์‹œ๊ฐ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ์ฐจํŠธ์˜ˆ์š”. ๋ณ‘๋ ฌ ๋กœ๋”ฉ์ด ์ž˜ ๋˜๊ณ  ์žˆ๋Š”์ง€, ๋ Œ๋”๋ง์„ ๋ง‰๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ์—†๋Š”์ง€ ๋“ฑ์„ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ด์š”.
  • Cache: 'Disable cache' ์˜ต์…˜์„ ์ผœ๊ณ  ํ…Œ์ŠคํŠธํ•˜์—ฌ ์บ์‹ฑ์ด ์ œ๋Œ€๋กœ ์ ์šฉ๋˜์—ˆ์„ ๋•Œ์˜ ์„ฑ๋Šฅ๊ณผ ๋น„๊ตํ•ด ๋ณผ ์ˆ˜ ์žˆ์–ด์š”.

์ด ํƒญ์„ ํ†ตํ•ด ์บ์‹ฑ ์ „๋žต, ์ด๋ฏธ์ง€ ์••์ถ•, ์›นํฐํŠธ ๋กœ๋”ฉ ๋ฐฉ์‹, ๋ฒˆ๋“ค ์ตœ์ ํ™” ๋“ฑ์„ ์–ด๋–ป๊ฒŒ ๊ฐœ์„ ํ•ด์•ผ ํ• ์ง€ ์‹ค๋งˆ๋ฆฌ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์–ด์š”.

3๏ธโƒฃ Memory ํƒญ์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ์ฐพ๊ธฐ ๐Ÿง 

๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜(Memory Leak)๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ์„ ์„œ์„œํžˆ ์ €ํ•˜์‹œํ‚ค๊ณ , ์žฅ๊ธฐ์ ์œผ๋กœ๋Š” ํฌ๋ž˜์‹œ๊นŒ์ง€ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์˜ˆ์š”. ํŠนํžˆ SPA(Single Page Application)์—์„œ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์–ธ๋งˆ์šดํŠธ๋œ ํ›„์—๋„ ๋ฉ”๋ชจ๋ฆฌ์— ๋‚จ์•„์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ๋ฐœ์ƒํ•ด์š”. Memory ํƒญ์€ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ์ง„๋‹จํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค˜์š”.

์œ ์šฉํ•œ ํŒ

Memory ํƒญ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•


  1. ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์—์„œ 'Memory' ํƒญ์„ ํด๋ฆญํ•ด์š”.

  1. 'Heap snapshot'์„ ์ฐ์–ด ํŠน์ • ์‹œ์ ์˜ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ๋ถ„์„ํ•˜๊ฑฐ๋‚˜, 'Performance monitor'๋ฅผ ํ†ตํ•ด ์‹ค์‹œ๊ฐ„ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ๊ด€์ฐฐํ•  ์ˆ˜ ์žˆ์–ด์š”.

'Heap snapshot'์„ ์ฐ์€ ํ›„, ํŠน์ • ๋™์ž‘(์˜ˆ: ํŽ˜์ด์ง€ ์ด๋™ ํ›„ ๋‹ค์‹œ ๋Œ์•„์˜ค๊ธฐ)์„ ๋ฐ˜๋ณตํ•˜๋ฉฐ ์Šค๋ƒ…์ƒท์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ฐ์–ด ๋น„๊ตํ•˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ๊ณ„์† ์ฆ๊ฐ€ํ•˜๋Š” ํŒจํ„ด์„ ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ์–ด์š”. ํŠนํžˆ 'Detached DOM tree'์™€ ๊ฐ™์€ ํ•ญ๋ชฉ์„ ์ฃผ์˜ ๊นŠ๊ฒŒ ์‚ดํŽด๋ณด๋ฉด, DOM ์š”์†Œ๊ฐ€ ํ™”๋ฉด์—์„œ ์ œ๊ฑฐ๋˜์—ˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  JavaScript ์ฐธ์กฐ๋กœ ์ธํ•ด ๋ฉ”๋ชจ๋ฆฌ์—์„œ ํ•ด์ œ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๋ฅผ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์–ด์š”. ์ด๋Š” ์ปดํฌ๋„ŒํŠธ ๋ผ์ดํ”„์‚ฌ์ดํด ๊ด€๋ฆฌ๋‚˜ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ํ•ด์ œ ๋“ฑ์—์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๊ฐ€๋Šฅ์„ฑ์„ ์‹œ์‚ฌํ•ด์š”.

๐Ÿ’ก Core Web Vitals ๊ฐœ์„ ์„ ์œ„ํ•œ ์‹ค์งˆ์ ์ธ ํŒ

๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ํ†ตํ•ด ๋ฌธ์ œ์ ์„ ์ง„๋‹จํ–ˆ๋‹ค๋ฉด, ์ด์ œ๋Š” CWV ์ง€ํ‘œ๋“ค์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•œ ๊ตฌ์ฒด์ ์ธ ์ „๋žต๋“ค์„ ์ ์šฉํ•ด ๋ณผ ์ฐจ๋ก€์˜ˆ์š”.

0๏ธโƒฃ LCP(Largest Contentful Paint) ๊ฐœ์„ ํ•˜๊ธฐ ๐Ÿ–ผ๏ธ

LCP๋Š” ์ฃผ๋กœ ํŽ˜์ด์ง€์˜ ๊ฐ€์žฅ ํฐ ์ฝ˜ํ…์ธ (์ด๋ฏธ์ง€, ๋น„๋””์˜ค, ํฐ ํ…์ŠคํŠธ ๋ธ”๋ก ๋“ฑ)๊ฐ€ ๋กœ๋“œ๋˜๋Š” ์‹œ๊ฐ„์— ์˜ํ–ฅ์„ ๋ฐ›์•„์š”. ๊ฐœ์„ ์„ ์œ„ํ•œ ์ฃผ์š” ์ „๋žต์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•„์š”.

  • ์ด๋ฏธ์ง€ ์ตœ์ ํ™”:

    • ์ ์ ˆํ•œ ํฌ๋งท(WebP, AVIF)๊ณผ ์••์ถ•๋ฅ ์„ ์‚ฌ์šฉํ•˜๊ณ , ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ๋ฐ˜์‘ํ˜•์œผ๋กœ ์กฐ์ •ํ•ด์š”.
    • loading="lazy" ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ทฐํฌํŠธ ๋ฐ–์— ์žˆ๋Š” ์ด๋ฏธ์ง€๋Š” ์ง€์—ฐ ๋กœ๋“œํ•ด์š”.
    • <link rel="preload" as="image" href="hero.jpg">์™€ ๊ฐ™์ด ์ค‘์š”ํ•œ ์ด๋ฏธ์ง€๋Š” ๋ฏธ๋ฆฌ ๋กœ๋“œํ•ด์š”.
    <!-- ์ค‘์š” ์ด๋ฏธ์ง€ ๋ฏธ๋ฆฌ ๋กœ๋“œ --> <link rel="preload" as="image" href="/images/hero-banner.webp" /> <!-- ์ผ๋ฐ˜ ์ด๋ฏธ์ง€ ์ตœ์ ํ™” ๋ฐ ์ง€์—ฐ ๋กœ๋“œ --> <img src="/images/product-thumbnail.webp" alt="Product Image" width="600" height="400" loading="lazy" />
  • ํฐํŠธ ์ตœ์ ํ™”: ์›นํฐํŠธ ๋กœ๋”ฉ์œผ๋กœ ์ธํ•œ ๋ ˆ์ด์•„์›ƒ ์‰ฌํ”„ํŠธ๋‚˜ ๋ณด์ด์ง€ ์•Š๋Š” ํ…์ŠคํŠธ(FOIT)๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด font-display ์†์„ฑ์„ ์ ์ ˆํžˆ ์‚ฌ์šฉํ•ด์š” (swap ๋˜๋Š” optional). ์ค‘์š”ํ•œ ํฐํŠธ๋Š” ๋ฏธ๋ฆฌ ๋กœ๋“œํ•ด์š”.

    @font-face { font-family: "MyCustomFont"; src: url("/fonts/my-custom-font.woff2") format("woff2"); font-display: swap; /* ํฐํŠธ ๋กœ๋“œ ์ „๊นŒ์ง€ ์‹œ์Šคํ…œ ํฐํŠธ ์‚ฌ์šฉ */ }
  • ์„œ๋ฒ„ ์‘๋‹ต ์‹œ๊ฐ„ ๋‹จ์ถ•: CDN(์ฝ˜ํ…์ธ  ์ „์†ก ๋„คํŠธ์›Œํฌ)์„ ์‚ฌ์šฉํ•˜์—ฌ ์ •์  ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๊ฐ€๊นŒ์šด ์„œ๋ฒ„์—์„œ ์ œ๊ณตํ•˜๊ณ , ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ๋ Œ๋”๋ง(SSR)์ด๋‚˜ ์ ์ง„์  ์ •์  ์žฌ์ƒ์„ฑ(ISR)์„ ํ™œ์šฉํ•˜์—ฌ ์ดˆ๊ธฐ HTML ์‘๋‹ต ์‹œ๊ฐ„์„ ์ค„์—ฌ์š”.

  • ๋ Œ๋”๋ง ์ฐจ๋‹จ ๋ฆฌ์†Œ์Šค ์ œ๊ฑฐ: CSS์™€ JavaScript ํŒŒ์ผ์€ ํŽ˜์ด์ง€ ๋ Œ๋”๋ง์„ ์ฐจ๋‹จํ•  ์ˆ˜ ์žˆ์–ด์š”. ์ค‘์š”ํ•œ CSS๋Š” ์ธ๋ผ์ธ์œผ๋กœ ์‚ฝ์ž…ํ•˜๊ณ , JavaScript๋Š” defer ๋˜๋Š” async ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋™๊ธฐ์ ์œผ๋กœ ๋กœ๋“œํ•ด์š”.

    <!-- ๋ Œ๋”๋ง ์ฐจ๋‹จ CSS ๋ฐฉ์ง€ (์ค‘์š” CSS๋Š” ์ธ๋ผ์ธ) --> <style> /* Critical CSS here */ </style> <link rel="stylesheet" href="/css/styles.css" media="print" onload="this.media='all'" /> <!-- JavaScript ๋น„๋™๊ธฐ ๋กœ๋“œ --> <script src="/js/main.js" defer></script> <script src="/js/analytics.js" async></script>

1๏ธโƒฃ INP(Interaction to Next Paint) ๊ฐœ์„ ํ•˜๊ธฐ ๐Ÿ–ฑ๏ธ

INP๋Š” ์‚ฌ์šฉ์ž์™€ ํŽ˜์ด์ง€ ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ ๋ฐ˜์‘์„ฑ์„ ๋‚˜ํƒ€๋‚ด์š”. ๊ธด ์ž‘์—…(Long Tasks)์ด ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๋ฅผ ์ ์œ ํ•˜๋Š” ๊ฒƒ์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ด์š”.

  • Long Tasks ์ค„์ด๊ธฐ:

    • JavaScript ๋ฒˆ๋“ค์„ ์ž‘๊ฒŒ ๋งŒ๋“ค๊ณ , ํ•„์š”ํ•œ ์‹œ์ ์—๋งŒ ๋กœ๋“œ๋˜๋„๋ก ์ฝ”๋“œ ๋ถ„ํ• (Code Splitting) ๋ฐ ๋ ˆ์ด์ง€ ๋กœ๋”ฉ(Lazy Loading)์„ ์ ์šฉํ•ด์š”.
    • ๋ณต์žกํ•˜๊ฑฐ๋‚˜ ๊ณ„์‚ฐ๋Ÿ‰์ด ๋งŽ์€ ์ž‘์—…์€ ์›น ์›Œ์ปค(Web Workers)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”์ธ ์Šค๋ ˆ๋“œ์—์„œ ๋ถ„๋ฆฌํ•ด์š”.
    // React ์ปดํฌ๋„ŒํŠธ ๋ ˆ์ด์ง€ ๋กœ๋”ฉ ์˜ˆ์‹œ (Next.js ๊ธฐ์ค€) import dynamic from "next/dynamic"; const MyHeavyComponent = dynamic( () => import("../components/MyHeavyComponent"), { ssr: false, // ํด๋ผ์ด์–ธํŠธ์—์„œ๋งŒ ๋ Œ๋”๋ง loading: () => <p>๋กœ๋”ฉ ์ค‘...</p>, }, ); function MyPage() { return ( <div> <h1>ํŽ˜์ด์ง€ ์ œ๋ชฉ</h1> <MyHeavyComponent /> </div> ); }
  • ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ ์ตœ์ ํ™”: ๊ณผ๋„ํ•œ DOM ์กฐ์ž‘์ด๋‚˜ ๋ณต์žกํ•œ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ๋Š” ๋””๋ฐ”์šด์‹ฑ(Debouncing) ๋˜๋Š” ์Šค๋กœํ‹€๋ง(Throttling)์„ ์ ์šฉํ•˜์—ฌ ์‹คํ–‰ ๋นˆ๋„๋ฅผ ์ค„์—ฌ์š”.

    function throttle(func, delay) { let timeoutId = null; return function (...args) { if (!timeoutId) { timeoutId = setTimeout(() => { func.apply(this, args); timeoutId = null; }, delay); } }; } // ์Šคํฌ๋กค ์ด๋ฒคํŠธ์— ์Šค๋กœํ‹€๋ง ์ ์šฉ ์˜ˆ์‹œ window.addEventListener( "scroll", throttle(() => { console.log("์Šคํฌ๋กค ์ด๋ฒคํŠธ ๋ฐœ์ƒ!"); // ์—ฌ๊ธฐ์— ๋น„์šฉ์ด ๋งŽ์ด ๋“œ๋Š” ์Šคํฌ๋กค ๊ด€๋ จ ๋กœ์ง ์ž‘์„ฑ }, 100), );

2๏ธโƒฃ CLS(Cumulative Layout Shift) ๊ฐœ์„ ํ•˜๊ธฐ ๐Ÿ“

CLS๋Š” ํŽ˜์ด์ง€ ์ฝ˜ํ…์ธ ๊ฐ€ ์˜ˆ๊ธฐ์น˜ ์•Š๊ฒŒ ์›€์ง์ด๋Š” ํ˜„์ƒ์„ ์˜๋ฏธํ•ด์š”. ์ด๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๋งค์šฐ ๋ถˆ์พŒํ•œ ๊ฒฝํ—˜์„ ์ค„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋ฐ˜๋“œ์‹œ ๊ฐœ์„ ํ•ด์•ผ ํ•ด์š”.

  • ์ด๋ฏธ์ง€ ๋ฐ ๋น„๋””์˜ค์— ๋ช…์‹œ์ ์ธ ํฌ๊ธฐ ์ง€์ •: width์™€ height ์†์„ฑ์„ HTML ํƒœ๊ทธ์— ๋ช…์‹œํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๊ณต๊ฐ„์„ ๋ฏธ๋ฆฌ ํ™•๋ณดํ•˜๋„๋ก ํ•ด์š”. CSS์—์„œ aspect-ratio๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์€ ๋ฐฉ๋ฒ•์ด์—์š”.

    <!-- width์™€ height ์†์„ฑ ๋ช…์‹œ --> <img src="/images/product.jpg" alt="Product" width="800" height="600" /> <!-- CSS aspect-ratio ํ™œ์šฉ --> <div style="width: 100%; aspect-ratio: 4 / 3;"> <img src="/images/product.jpg" alt="Product" style="width: 100%; height: 100%; object-fit: cover;" /> </div>
  • ํฐํŠธ ๋กœ๋”ฉ ์ „๋žต: font-display: optional ๋˜๋Š” font-display: swap์„ ์‚ฌ์šฉํ•˜์—ฌ ํฐํŠธ ๋กœ๋”ฉ์œผ๋กœ ์ธํ•œ ๋ ˆ์ด์•„์›ƒ ์‰ฌํ”„ํŠธ๋ฅผ ์ตœ์†Œํ™”ํ•ด์š”. size-adjust, ascent-override ๋“ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ฐฑ ํฐํŠธ์™€ ์›นํฐํŠธ์˜ ํฌ๊ธฐ๋ฅผ ๋น„์Šทํ•˜๊ฒŒ ๋งž์ถ”๋Š” ๊ฒƒ๋„ ํšจ๊ณผ์ ์ด์—์š”.

  • ๋™์  ์ฝ˜ํ…์ธ  ์‚ฝ์ž… ์‹œ ์ฃผ์˜: ๊ด‘๊ณ , ๋ฐฐ๋„ˆ, ์œ„์ ฏ ๋“ฑ ๋™์ ์œผ๋กœ ์‚ฝ์ž…๋˜๋Š” ์ฝ˜ํ…์ธ ๋Š” ๋ฏธ๋ฆฌ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•ด ๋‘๊ฑฐ๋‚˜, ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ์— ์˜ํ•ด์„œ๋งŒ ๋กœ๋“œ๋˜๋„๋ก ๊ตฌํ˜„ํ•˜์—ฌ ์˜ˆ๊ธฐ์น˜ ์•Š์€ ๋ ˆ์ด์•„์›ƒ ์ด๋™์„ ๋ฐฉ์ง€ํ•ด์š”.

๐Ÿ“ ์ •๋ฆฌํ•˜๋ฉฐ

0๏ธโƒฃ ํ•ต์‹ฌ ์š”์•ฝ ๐ŸŽฏ

์˜ค๋Š˜ ์šฐ๋ฆฌ๋Š” ์›น ์„ฑ๋Šฅ ์ตœ์ ํ™”์˜ ์ค‘์š”์„ฑ๋ถ€ํ„ฐ Core Web Vitals ์ง€ํ‘œ, ๊ทธ๋ฆฌ๊ณ  ํฌ๋กฌ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ด๋“ค์„ ์ง„๋‹จํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋Š” ์‹ค์งˆ์ ์ธ ๋ฐฉ๋ฒ•๊นŒ์ง€ ์ž์„ธํžˆ ์‚ดํŽด๋ณด์•˜์–ด์š”.
์›น ์„ฑ๋Šฅ ์ตœ์ ํ™”๋Š” ๋‹จ์ˆœํžˆ ํŽ˜์ด์ง€๋ฅผ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ๋„˜์–ด, ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๋‚˜์€ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ๋ชฉํ‘œ ๋‹ฌ์„ฑ์— ๊ธฐ์—ฌํ•˜๋Š” ํ•ต์‹ฌ์ ์ธ ๊ฐœ๋ฐœ ์—ญ๋Ÿ‰์ด์—์š”. Lighthouse๋กœ ์ „๋ฐ˜์ ์ธ ์ƒํƒœ๋ฅผ ํŒŒ์•…ํ•˜๊ณ , Performance ํƒญ์œผ๋กœ ๋Ÿฐํƒ€์ž„ ๋ณ‘๋ชฉ ํ˜„์ƒ์„ ๋ถ„์„ํ•˜๋ฉฐ, Network ํƒญ์œผ๋กœ ๋ฆฌ์†Œ์Šค ๋กœ๋”ฉ์„ ์ตœ์ ํ™”ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ด์š”. ๋˜ํ•œ, LCP, INP, CLS ๊ฐ ์ง€ํ‘œ์— ๋งž๋Š” ๊ตฌ์ฒด์ ์ธ ๊ฐœ์„  ์ „๋žต์„ ์ ์šฉํ•ด์•ผ ํ•œ๋‹ต๋‹ˆ๋‹ค.

1๏ธโƒฃ ๋‹ค์Œ ์•ก์…˜ ๐Ÿš€

์ด๋ก ์ ์ธ ์ง€์‹๋งŒ์œผ๋กœ๋Š” ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์•„์š”. ์ง€๊ธˆ ๋ฐ”๋กœ ์—ฌ๋Ÿฌ๋ถ„์ด ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ๋Š” ์›น์‚ฌ์ดํŠธ๋‚˜ ๊ด€์‹ฌ ์žˆ๋Š” ์›น ํŽ˜์ด์ง€๋ฅผ ์—ด๊ณ  ํฌ๋กฌ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”.

  • Lighthouse ๊ฐ์‚ฌ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ํ˜„์žฌ ํŽ˜์ด์ง€์˜ CWV ์ ์ˆ˜๋ฅผ ํ™•์ธํ•ด ๋ณด์„ธ์š”.
  • Performance ํƒญ์œผ๋กœ ํŠน์ • ์ƒํ˜ธ์ž‘์šฉ ์‹œ ๋ฐœ์ƒํ•˜๋Š” Long Tasks๋ฅผ ์ฐพ์•„๋ณด์„ธ์š”.
  • Network ํƒญ์œผ๋กœ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ํฐ ๋ฆฌ์†Œ์Šค๋‚˜ ๋А๋ฆฌ๊ฒŒ ๋กœ๋“œ๋˜๋Š” ๋ฆฌ์†Œ์Šค๋ฅผ ์‹๋ณ„ํ•ด ๋ณด์„ธ์š”.

์ด ๊ณผ์ •์—์„œ ๋ฐœ๊ฒฌ๋˜๋Š” ๋ฌธ์ œ์ ๋“ค์„ ํ•˜๋‚˜์”ฉ ๊ฐœ์„ ํ•ด ๋‚˜๊ฐ€๋‹ค ๋ณด๋ฉด, ์–ด๋А์ƒˆ ์—ฌ๋Ÿฌ๋ถ„์˜ ์›น์‚ฌ์ดํŠธ๋Š” ๋” ๋น ๋ฅด๊ณ  ์‚ฌ์šฉ์ž ์นœํ™”์ ์œผ๋กœ ๋ณ€ํ•ด ์žˆ์„ ๊ฑฐ์˜ˆ์š”. ๊พธ์ค€ํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ์ตœ์ ํ™”๋Š” ์„ ํƒ์ด ์•„๋‹Œ ํ•„์ˆ˜๋ผ๋Š” ์ , ์žŠ์ง€ ๋งˆ์‹œ๊ณ ์š”!

๐Ÿ“ฎ ์ฐธ๊ณ 

์—ฐ๊ด€๋œ ํฌ์ŠคํŠธ