Web Basic · Performance

성능 프로파일링에서 병목 읽기

성능 프로파일링은 감으로 느린 부분을 찍는 대신, 로딩·스크립트·렌더링·메모리 중 어느 비용이 사용자 시간을 가져가는지 측정한다.

01

시나리오 선택

첫 진입, 검색, 목록 스크롤처럼 사용자가 느끼는 경로를 고른다.

02

기록 실행

캐시 조건과 throttling을 고정하고 performance trace를 수집한다.

03

병목 분류

네트워크 대기인지 메인 스레드 작업인지 렌더링 비용인지 나눈다.

04

개선 비교

코드 변경 뒤 같은 조건에서 지표와 flame chart가 줄었는지 본다.

LCP
주요 콘텐츠 표시 hero 이미지, 서버 응답, CSS 차단이 영향을 준다
이미지 preload와 크기 지정 확인
INP
입력 반응성 클릭 뒤 긴 JS task와 렌더링 지연을 확인
작업 분할과 불필요한 렌더 제거
CLS
레이아웃 안정성 이미지·광고·폰트 로딩으로 밀리는 요소를 확인
예약 공간과 font-display 정책
Bundle
전송·파싱 비용 초기 JS 크기, 중복 의존성, polyfill을 점검
code splitting은 실제 경로 기준

조건 고정 · Trace · 이미지 점검

조건 고정 네트워크와 CPU throttling이 비교마다 같다.
Trace 긴 task와 layout 비용이 어느 함수에서 시작되는지 보인다.
이미지 표시 크기와 실제 파일 크기가 과도하게 벌어지지 않는다.
회귀선 성능 예산이나 Lighthouse 기준이 CI에 남아 있다.