이 튜토리얼에서는 Query Monitor를 사용하고, 보고서를 이해하며, 적절한 조치를 취하는 방법을 설명합니다. 사이트에서 성능 문제를 일으키는 원인을 파악하고 이를 해결하기 위한 올바른 단계를 수행할 수 있습니다.
Query Monitor 설치
플러그인을 설치하려면 사이트 관리 화면의 플러그인 페이지로 이동하여 상단의 새로 만들기 버튼을 클릭하세요. 검색 필드에 “query monitor”를 입력하고 지금 설치 버튼을 클릭하세요. 마지막으로 활성화 버튼이 표시되면 클릭하세요.

Query Monitor 자체도 상당한 리소스를 요구한다는 점에 유의하세요. 성능 문제를 파악할 때만 활성화하고 이후에는 비활성화해야 합니다.
인증 쿠키 활성화
방문자(관리자뿐만 아니라)에게 사이트 성능이 어떻게 나타나는지 확인해야 합니다. Query Monitor는 “인증 쿠키”를 사용하여 이 작업을 수행할 수 있도록 지원합니다.
플러그인 페이지로 이동하여 Query Monitor를 찾은 다음 설정 링크를 클릭하세요. 페이지 하단에 플러그인 창이 열립니다. 인증 쿠키 설정(Set authentication cookie) 버튼을 클릭하세요.
Query Monitor 사용 방법
Query Monitor가 실행되면 관리자 표시줄에 다음과 같은 일련의 성능 값이 표시됩니다.
- 0.17 s 10,453 kB 0,0323 s 123 Q
이 값은 페이지 로드 시간, 사용된 메모리, 데이터베이스 요청 시간 및 데이터베이스 요청 수를 나타냅니다.
이 정보 위에 마우스를 올리면 Query Monitor의 드롭다운 메뉴가 열립니다. 메뉴 항목을 클릭하면 더 많은 정보가 포함된 추가 패널이 열립니다.

성능을 테스트할 때 가장 유용한 첫 번째 메뉴 항목은 Queries입니다. 이 항목을 클릭하면 데이터베이스 쿼리에 대한 중요한 정보가 많이 포함된 패널이 나타납니다.

정보 읽기
WordPress에서 데이터베이스를 쿼리하는 가장 중요한 방법은 WP_Query 클래스를 사용하는 것입니다. 쿼리를 순서, 영향을 받는 행 수, 시간별로 정렬할 수 있습니다. 시간순으로 정렬하면 처리량이 가장 많은 쿼리에 먼저 집중할 수 있습니다.
이 예시에서 테스트 사이트의 가장 무거운 쿼리는 wp_load_alloptions() 및 WP_Query->get_posts()에서 발생합니다.

첫 번째 쿼리는 플러그인과 테마의 모든 옵션을 로드합니다. 이는 WordPress 코어에서 발생하므로 개선하기 위해 할 수 있는 조치가 없습니다.
두 번째 쿼리는 get_posts()에서 발생합니다. 현재 WooCommerce 상점 페이지에 있으므로 이 쿼리는 상품을 로드합니다.
플러그인별로 결과 필터링
쿼리는 구성 요소(플러그인)별로 필터링할 수 있으며, 테스트 사이트에서 WP Happy Blog 테스트 플러그인이 꽤 많은 호출을 수행한 것을 확인할 수 있습니다. 총 시간은 0.0651 s 중 0.0179 s입니다(관리자 표시줄 상단에 표시됨).

즉, 호출의 거의 4분의 1이 이 플러그인에 의해 수행되었습니다. 많아 보일 수 있지만, 이는 플러그인이 수행하는 작업에 따라 다릅니다.
프로파일링
특정 플러그인이 데이터베이스를 쿼리하는 양은 설치된 플러그인 수와 설정에 따라 달라질 수 있습니다.
다음 이미지에서는 데이터베이스 요청 시간의 거의 50%(0.1333 s 중 0.0513 s)를 woocommerce-products-filter가 차지하는 것을 볼 수 있습니다.
사이트 성능을 개선하는 방법
사이트 성능을 분석할 때 데이터베이스 요청 시간을 가장 많이 차지하는 플러그인을 먼저 찾는 것이 좋습니다. 해당 플러그인을 비활성화하거나 더 나은 플러그인으로 교체해 보세요.
어떤 플러그인이 사이트 속도를 늦추는지 확실하지 않은 경우 플러그인을 하나씩 임시로 비활성화하여 성능에 미치는 영향을 확인할 수 있습니다.
또한 테마를 기본 테마로 전환하고 성능에 미치는 영향을 확인해 보세요. 일부 비효율적인 플러그인과 테마가 WPML을 통해 데이터베이스에 너무 많은 요청을 보내는 경우가 있었습니다.
WPML 관련 문제
문제가 WPML과 관련이 있는 것으로 보이면 어떤 WPML 플러그인이 성능에 가장 큰 영향을 미치는지 확인하는 것이 좋습니다.
어떤 경우든 사이트에서 최신 버전의 WPML 플러그인을 실행하고 있는지 확인하세요.
여전히 성능 문제가 발생하나요?
여전히 문제가 발생하는 경우 WPML 성능 문제 예방에 대한 팁을 따르는 것이 좋습니다.
해당 페이지의 단계를 따라도 도움이 되지 않으면 지원팀에 문의하는 것이 가장 좋습니다. 지원팀에서 사이트를 살펴보고 문제가 어디서 발생하는지 분석할 수 있습니다.




