웹사이트

사이트 성능 및 APM

Application Performance Monitoring tells you where your site's time actually goes: response time percentiles, the slowest URLs, the slowest database queries, and how hard PHP is working. This guide…

Application Performance Monitoring은 사이트의 시간이 실제로 어디로 가는지 보여줍니다: 응답 시간 백분위수, 가장 느린 URL, 가장 느린 데이터베이스 쿼리, PHP가 얼마나 열심히 작동하는지를 나타냅니다. 이 가이드는 APM을 활성화하고, 각 패널을 읽고, 표시되는 내용에 따라 조치를 취하는 것을 다룹니다.

KPanel에서 APM의 위치

  1. KPanel에 로그인합니다.
  2. 왼쪽 사이드바에서 Websites를 클릭한 다음 사이트를 클릭합니다.
  3. 사이트의 탭 스트립에서 WordPress를 연 다음 APM을 엽니다.

직접 주소는 /websites/<site-id>/performance입니다.

KPanel의 사이트에 대한 애플리케이션 성능 모니터링

APM은 플랜 특전입니다. Managed WordPress Pro에 포함되어 있습니다. 다른 플랜에서는 대시보드 대신 APM이 포함하는 내용을 설명하는 업그레이드 패널이 표시됩니다. 해당 패널이 표시되면 기능이 꺼져 있는 것이 아니라 현재 플랜에서 사용할 수 없습니다.

APM 켜기

APM은 활성화할 때까지 꺼져 있습니다. 적격 플랜에서는 페이지에 Enable APM 버튼이 있는 Application Performance Monitoring 카드가 표시됩니다.

활성화하면 PHP 워커 수준에서 경량 액세스 로그와 느린 요청 추적기가 추가됩니다. 페이지에 아무것도 주입하지 않으며 방문자의 요청에 추가 작업을 추가하지 않으므로 항상 켜두어도 안전합니다.

활성화되면 페이지에 APM Active 약자, 켜진 날짜, Refresh 버튼 및 Disable APM 버튼이 표시됩니다. 실제 트래픽이 도착한 후에만 메트릭이 나타나므로 조용한 사이트는 한동안 Waiting for requests를 표시합니다.

응답 시간

첫 번째 카드는 지난 시간의 네 가지 수치를 보유하며, 요청 수와 캡처 시간이 헤더에 있습니다.

메트릭의미
Median (P50)요청의 절반이 이보다 빠름
P95요청의 95퍼센트가 이보다 빠름
P99요청의 99퍼센트가 이보다 빠름
5xx Error Rate서버 오류로 실패한 요청의 비중

각 타일은 색상으로 코딩되어 있어 임계값을 몰라도 상태를 읽을 수 있습니다.

백분위수를 함께 읽으십시오. 좋은 중앙값과 끔찍한 P95는 대부분의 요청이 잘 작동하고 소수가 느리다는 것을 의미하며, 이는 느린 페이지 하나, 느린 쿼리 하나 또는 특정 URL에서 캐시 미스의 전형적인 특징입니다. 나쁜 중앙값은 전체 사이트가 느리고 원인은 보통 구조적입니다: 부족한 플랜, 무거운 테마 또는 캐싱이 꺼짐.

5xx 오류율은 0이어야 하는 유일한 수치입니다. 0 이상의 지속된 값은 방문자가 실패를 보고 있다는 의미입니다.

PHP 워커

PHP Workers 카드는 세 개의 숫자를 보여줍니다:

  • Active Workers: 현재 요청을 처리하는 PHP 프로세스의 수.
  • Slow Requests: 느린 요청 임계값을 초과하고 기록된 요청.
  • Total Handled: 풀이 시작된 이후 수용된 연결.

활성 워커는 포화 신호입니다. 정상 트래픽 중에 천장 근처에 고정되어 있으면 요청이 PHP 뒤에서 대기 중이며 위 페이지의 모든 응답 시간은 부분적으로 대기 시간입니다. 이는 코드 문제가 아니라 용량 문제이며 해결책은 더 큰 플랜이거나 요청당 작업을 줄이는 것입니다.

요청 볼륨이 안정적인 상태에서 느린 요청 수가 증가한다는 것은 뭔가 비싸졌다는 의미입니다.

가장 느린 엔드포인트

이 카드는 P95 응답 시간순으로 가장 느린 URL을 나열하며, 각각에는 막대, 밀리초 단위의 P95 및 수신한 호출 수가 있습니다. 색상은 최악의 범죄자를 표시합니다.

리더보드가 아니라 단축 목록으로 읽으십시오. 원하는 것은 느리고 자주 호출되는 것의 교집합입니다: 4초가 걸리고 하루에 두 번 호출되는 페이지는 900밀리초가 걸리고 하루에 10,000번 호출되는 페이지보다 훨씬 덜 중요합니다.

일반적인 범죄자:

  • Search pages: 인덱스 없이 스캔.
  • Category and archive listings: 요청당 큰 쿼리 구성.
  • Cart, checkout, and account pages: 방문자당이기 때문에 캐시되지 않음. 캐시를 설계상 우회하는 경로는 Site Caching을 참조하십시오.
  • Admin URLs: 항상 동적.
  • 외부 API를 호출하는 모든 것: 요청 내에서, 다른 사람의 서버를 측정하는 경우.

느린 쿼리

Slow Queries 카드는 데이터베이스의 자체 성능 데이터에서 가져온 평균 100밀리초를 초과하는 데이터베이스 쿼리를 나열합니다. 각 행은 평균 시간, 최대 시간, 호출 수 및 정규화된 쿼리 텍스트를 보여줍니다.

쿼리 텍스트는 다이제스트이며 리터럴 값이 제거되므로 다른 매개변수가 있는 동일한 쿼리는 하나의 행으로 그룹화됩니다. 이것이 호출 수를 의미 있게 만드는 것입니다.

느린 쿼리 수정은 보통 세 가지 중 하나입니다: 쿼리가 필요로 하는 인덱스 추가, 결과를 캐싱하여 쿼리가 실행되는 빈도 감소 또는 쿼리를 생성하는 플러그인 제거. 호출 수가 매우 높고 평균이 중간 정도인 쿼리는 종종 단일의 극적인 이상치보다 집계에서 더 악화됩니다.

엔드포인트와 쿼리 목록이 모두 비어 있으면 카드에는 느린 요청이 감지되지 않았다고 표시되며, 이는 지난 시간의 모든 항목이 정상 임계값 내에 있다는 의미입니다.

APM 잘 사용하기

기준선을 잡으십시오. 사이트가 건강할 때 숫자를 확인하여 정상이 어떻게 보이는지 알 수 있습니다. P95가 700밀리초라는 것은 이전에 300이었다는 것을 알 때까지는 아무것도 의미하지 않습니다.

한 번에 한 가지를 변경하십시오. 캐시를 활성화하고 새로 고친 후 비교합니다. 의심스러운 플러그인을 비활성화하고 새로 고친 후 비교합니다. 일괄 변경은 신호를 주지 않습니다.

의도적으로 새로 고치십시오. Refresh 버튼은 요청시 메트릭을 다시 읽습니다. 수치는 지난 시간을 포함하므로 변경을 판단하기 전에 조금 기다리십시오.

APM 외부도 확인하십시오. APM은 애플리케이션을 측정합니다. 문제가 코드가 아니라 네트워크 또는 에지인 경우 Site Traffic AnalyticsSite Uptime Monitoring이 대신 이를 표시합니다.

문제 해결

페이지에 업그레이드 패널이 표시됩니다. APM은 Managed WordPress Pro에 포함되어 있습니다. 다른 플랜에서는 사용할 수 없습니다.

APM이 켜져 있지만 메트릭이 없습니다. 아직 트래픽이 없습니다. 사이트가 요청을 받으면 메트릭이 나타납니다.

APM에서 응답 시간은 괜찮지만 사이트가 느립니다. APM은 서버측 시간만 측정합니다. 브라우저에서 이미지 다운로드, JavaScript 실행, 글꼴 로드에 소비된 시간은 여기에 표시되지 않습니다. 서버 시간이 양호하고 페이지가 여전히 느리면 문제는 프론트 엔드 또는 브라우저에 요청하는 항목에 있습니다.

플러그인 업데이트 후 P95가 악화되었습니다. 가장 느린 엔드포인트 목록을 확인한 다음 느린 쿼리 목록을 확인합니다. 모든 페이지 로드에 쿼리를 추가한 플러그인이 둘 다에 표시됩니다.

모든 것이 항상 느립니다. 먼저 PHP 워커의 포화 상태를 확인합니다. 워커가 고정되어 있으면 다른 것을 최적화하기 전에 용량을 추가하거나 요청당 작업을 줄입니다.

오류가 0 이상입니다. 밀리초를 추적하기 전에 이를 수정하십시오. 로그로 시작하고 사이트의 Error pages 탭의 Troubleshoot with Kora 버튼을 사용하여 Kora에게 오류 로그와 최근 실패를 읽도록 요청합니다. Custom Error Pages를 참조하십시오.

관련 페이지

  • Site Caching은 보통 WordPress 사이트에 대한 가장 큰 이점입니다.
  • Site Security는 동일한 사이트의 취약성 및 맬웨어 스캔에 대한 것입니다.
  • Taking a Backup은 플러그인 제거를 시작하기 전에 수행합니다.

여전히 도움이 필요하신가요?

다음 주소로 이메일을 보내주세요 support@kapsulehost.com 또는 KPanel에서 채팅을 시작하세요.

KPanel 열기