사이트 접속 속도가 느릴 때 해결방법
워드프레스로 만든 사이트로 클라이언트가 접속하는 경우 서버내에서는 PHP가 동작을 하고 브라우저에 HTML 형식으로 페이지를 만들어지기 까지 많은 데이터를 조립하는 과정을 거치게 됩니다. 단일 페이지라 하더라도 위와 같은 과정을 매번 거치게되는 것은 서버에 부담을 줄 수밖에 없고, 접속한 클라이언트에서 최종 결과물을 접근하기까지 많은 시간이 소요되기도 합니다.
캐시 플러그인은 클라이언트에 전달하는 페이지를 서버내 HTML 형식으로 저장하여 위와 같은 과정을 일부 생략하게 되고 서버내 부담을 줄이고 응답 속도를 빠르게 합니다.
대표적인 캐싱 플러그인은 다음과 같으며 기본적으로 무료버전을 제공하고 좀 더 많은 기능은 유료 버전을 통해 제공됩니다. 자세한 사용 방법은 URL을 통해 확인 하실 수 있습니다.
CDN (Contents delivery Network ) 서버 활용
외부 CDN 서버를 사용 하는 경우 다음과 같은 장점이 있습니다.
- 클라이언트의 전용망에서 응답이 빠른 미디어 서버에서 정적 데이터를 가져가므로 속도가 향상 됩니다
- 웹서버가 아닌 외부서버의 트래픽을 사용하여 클라이언트에 전송하므로 트래픽 부담을 줄일 수 있습니다.
- 접속자가 많아 지는경우 웹서버가 아닌 미디어서버에서 정적 데이터를 처리하므로 부하를 줄일 수 있습니다.
JPG, PNG, CSS, JAVASCRIPT, WOFF 등 정적 데이터를 CDN 서버에서 처리하도록 하여 위와같은 이점을 가져올 수 있고, wordpress.org 공식 홈페이지에서도 CDN 서비스를 제공하는 플러그인을 많이 찾아보실수 있습니다. 예로 대표적인 워드프레스 플러그인 jetpack에서도 간단한 설정만으로 javascript, css와 같은 정적 데이터를 캐시서버에서 로드하도록 처리 합니다.
css, JavaScript 최적화
css, javascript 와 같은 정적 데이터에 대한 최적화 작업이 필요합니다.
해당 포맷의 파일에서 불필요한 줄바꿈, 블록 구분 기호, 공백을 없애므로써 파일 사이즈 및 트래픽을 줄일 수 있고 이는 속도 개선에 도움을 주게 됩니다. https://www.minifier.org 와 같은 온라인에서 툴로 작업을 하는 방법도 있으나 플러그인을 통해 간편하게 작업도 가능합니다.
Autoptimize 플러그인을 통해 관리자 패널에서 간단히 minify 작업이 가능합니다.
DB 최적화
워드프레스의 여러 데이터가 쌓이다보면 DB에 불필요한 레코드가 생성되는 경우도 있고 wp_posts 테이블의 경우 REVISION 레코드가 누적되어 전체적인 속도에 영향을 주는 경우가 있습니다. DBMS QUERY에 대한 이해도가 있다면 직접 테이블 / 레코드 질의를 해보고 관리가 가능하지만 플러그인을 통해 간단한 클릭만으로 최적화 작업이 가능합니다. 대표적인 플러그인으로는 wp-optimize 와 wp-sweep이 있으며 무료 버전으로도 사용하는데 무리가 없습니다. 물론 DB최적화 작업 전에는 백업이 필수 입니다.
wp optimize 의 경우 DB 최적화 외에도 이미지파일 이나 css, javascript minify 등의 정적 데이터 최적화 기능도 제공합니다.
워드프레스는 PHP 어플리케이션 기반의 MYSQL(MARIADB)를 사용하는 CMS이며, 다양한 기능과 확장성을 포함하는 만큼 서버, 클라이언트에 부담일 수 있습니다. 서버에서 동적 데이터를 처리하여 클라이언트에게 정보를 전달하는 시간, 그리고 클라이언트 환경에서 데이터를 받아 처리하고 출력하는 시간을 최소화 하도록 노력해야 합니다. 이러한 부분들이 워드프레스로 만든 사이트 접근 속도에 영향을 줄 수 있고, 문제를 해결 할 수 있는 방법을 제시합니다.
알려드린 방법 외에도 이미지 사이즈 최적화를 통해 큰 트래픽이 발생하지 않도록 하는 방법, 불필요한 테마나 플러그인을 삭제하는 것도 중요하고 너무 다이나믹한 페이지 설정을 하여 클라이언트 브라우저에 무리를 주는 것을 피하는등의 노력도 필요하며, 구글 페이지 속도 측정 페이지에서 성능 체크를 하며 최적화 하는 작업을 하시는게 좋습니다.
대표적인 캐싱 플러그인
- WP Super Cache ( https://wordpress.org/plugins/wp-super-cache/ )
- WP Fastest Cache ( https://wordpress.org/plugins/wp-fastest-cache/ )
- WP Rocket ( https://elementor.com/blog/wp-rocket/ )
- W3 Total Cache ( https://wordpress.org/plugins/w3-total-cache/ )
자세한 사용 방법은 URL을 통해 확인 하실 수 있습니다.