Lighthouse 보고서의 기회 섹션에는 사용자의 브라우저가 요청을 한 후 페이지 콘텐츠의 첫 번째 바이트를 수신하는 데 걸리는 시간인 서버 응답 시간이 보고됩니다.

서버 응답 시간이 느리면 성능에 영향을 미침
브라우저가 서버가 기본 문서 요청에 응답할 때까지 600ms 이상 기다리면 이 감사에 실패합니다. 사용자는 페이지 로드 시간이 긴 것을 싫어합니다. 서버 응답 시간이 느린 것이 페이지 로딩이 오래 걸리는 원인일 수 있습니다.
사용자가 웹브라우저에서 URL로 이동하면 브라우저에서 네트워크 요청을 통해 해당 콘텐츠를 가져옵니다. 서버가 요청을 수신하고 페이지 콘텐츠를 반환합니다.
사용자가 원하는 모든 콘텐츠가 포함된 페이지를 반환하기 위해 서버에서 많은 작업을 해야 할 수 있습니다. 예를 들어 사용자가 주문 내역을 확인하는 경우 서버는 데이터베이스에서 각 사용자의 내역을 가져온 다음 해당 콘텐츠를 페이지에 삽입해야 합니다. 이와 같은 작업을 최대한 빨리 실행하도록 서버를 최적화하는 것이 사용자가 페이지가 로드되기를 기다리는 시간을 줄이는 한 가지 방법입니다.
서버에서 많은 작업을 수행하지 않아도 클라이언트와 서버 간의 네트워크 지연 시간으로 인해 서버 응답 시간이 느려질 수 있습니다.
서버 응답 시간을 개선하는 방법
서버 응답 시간을 개선하는 첫 번째 단계는 서버가 페이지 콘텐츠를 반환하기 위해 완료해야 하는 핵심 개념 작업을 식별한 다음 각 작업에 걸리는 시간을 측정하는 것입니다. 가장 긴 작업을 파악한 후에는 속도를 높일 방법을 찾아보세요.
서버 응답이 느린 원인은 다양하며, 따라서 개선 방법도 다양합니다.
- 페이지를 더 빠르게 준비할 수 있도록 서버의 애플리케이션 로직을 최적화합니다. 서버 프레임워크를 사용하는 경우 프레임워크에 이를 수행하는 방법에 대한 추천이 있을 수 있습니다.
- 서버가 데이터베이스를 쿼리하는 방식을 최적화하거나 더 빠른 데이터베이스 시스템으로 이전합니다.
- 메모리나 CPU가 더 많도록 서버 하드웨어를 업그레이드합니다.
CDN을 사용하여 네트워크 지연 시간을 줄입니다. 문서를 CDN 에지 노드에 캐시할 수 있는 경우 특히 효과적입니다.
자세한 내용은 TTFB 최적화 가이드를 참고하세요.
스택별 안내
Drupal
Internal Page Cache
, Internal Dynamic Page Cache
, BigPipe
등의 Drupal
캐싱 모듈을 사용하여 트래픽을 오프로드하세요. CDN과 함께 사용하면 응답 시간을 더욱 개선할 수 있습니다. 호스팅 서버에서는 PHP OPcache를 사용해야 합니다. 데이터베이스 쿼리 시간을 단축하기 위해 Redis 또는 Memcached와 같은 메모리 캐싱을 사용하는 것이 좋습니다. 마지막으로 성능이 우수한 테마, 모듈, 고속 서버를 사용하여 서버 응답 시간을 단축하세요.
Magento
Magento의 Varnish 통합을 사용합니다.
React
서버 측에서 React 구성요소를 렌더링하는 경우 renderToNodeStream()
또는 renderToStaticNodeStream()
을(를) 사용하여 클라이언트가 모든 마크업이 아닌 마크업의 서로 다른 부분을 받아서 하이드레이션할 수 있도록 허용해 보세요.
WordPress
가벼운 테마 (블록 테마가 가장 좋음)를 선택하고 전체 페이지 캐싱 또는 정적 사이트 솔루션을 구현하세요. 서버 오버헤드를 최소화하려면 불필요한 플러그인을 사용 중지하세요.
호스팅을 관리형 또는 전용 서비스로 업그레이드하는 것을 고려해 보세요.