Files
2nd/10_Wiki/Topics_Dev/Lighthouse.md
T

18 lines
2.8 KiB
Markdown

# [[Lighthouse|Lighthouse]]
## 📌 Brief Summary
Lighthouse는 [[Chrome DevTools|Chrome DevTools]]에 내장되어 웹 애플리케이션의 성능을 측정하고 종합적인 감사를 제공하는 도구입니다 [1, 2]. 주로 [[Core Web Vitals|Core Web Vitals]] 지표를 기반으로 구체적이고 실행 가능한 성능 최적화 권장 사항을 제시하며, CI(지속적 통합) 파이프라인에서 실행하여 프로덕션 환경으로 성능 회귀(Performance regression)가 유입되는 것을 방지할 수 있습니다 [2].
## 📖 Core 대Content
* **성능 감사 및 문제 진단 워크플로우:** 성능 최적화의 첫 단계로 Lighthouse를 실행하여 어떤 Core Web Vital 지표가 개선이 필요한지 식별하는 것이 권장됩니다 [1]. 이후 React DevTools Profiler와 같은 도구를 사용해 가장 느린 컴포넌트를 격리하고 개선 사항을 적용한 뒤, 다시 측정하여 결과를 확인하는 방식으로 사용됩니다 [1].
* **렌더링 차단 리소스(Render-[[Blocking|Blocking]] resources) 분석:** Lighthouse는 페이지 렌더링을 방해하는 리소스를 분석하고 식별합니다. 특히 실제로 페이지 렌더링을 지연시키는 리소스만을 선별하여 보여주기 때문에 불필요한 오탐(false positives)을 피하는 데 유용합니다 [3, 4].
* **LCP 및 주요 요청 체인(Critical Request Chains) 시각화:** 사이트의 LCP(Largest Contentful Paint) 요소 및 렌더링 시점을 식별해 줍니다 [5]. 또한 각 LCP 단계와 거기에 소요된 시간을 분석하여 최적화 노력을 어디에 집중해야 할지 돕고, 복잡한 사이트에서는 별도의 감사를 통해 렌더링 차단 여부와 무관하게 중요도가 높은 리소스들의 요청 체인을 시각적으로 강조해 줍니다 [5].
* **실제 사용자 데이터(RUM)와의 병행 사용:** Lighthouse는 실험실 도구(Lab tool)이므로 실제 사용자의 기기, 네트워크 상태 및 사용 패턴을 완벽히 반영하지 못할 수 있습니다 [1]. 따라서 프로덕션 환경에서는 `web-vitals` 자바스크립트 라이브러리를 활용해 실제 사용자 데이터(Field data)를 수집하여 함께 모니터링하는 것이 필수적입니다 [1, 2].
## 🔗 Knowledge Connections
- **Related Topics:** [[Core Web Vitals|Core Web Vitals]], LCP, Render-blocking resources, [[Chrome DevTools|Chrome DevTools]]
- **Projects/Contexts:** [[React Performance Optimization|React Performance Optimization]], [[Critical Rendering Path|Critical Rendering Path]]
- **Contradictions/Notes:** 다른 성능 측정 도구인 WebPageTest가 모든 렌더링 차단 리소스를 명확하게 표시하는 반면, Lighthouse는 페이지 렌더링을 실제로 지연시키는 요소만 미묘하게 강조한다는 접근 방식의 차이가 있습니다 [3].
---
*Last updated: 2026-04-25*