플러그인은 양날의 검


플러그인은 워드프레스 사이트에 새로운 날개를 달아주는 획기적인 도구입니다. 그렇지만 플러그인은 양날의 검을 가진 툴이기도 합니다.
워드프레스 운영자가 처음에 겪는 실수 가운데 하나는 플러그인에 감탄하면서 플러그인을 끊임없이 늘려가는 것입니다.
그렇지만 관리되지 않고 조금씩 늘어난 플러그인은 결국 워드프레스 사이트에 중대한 영향을 미치게 됩니다.
플러그인의 갯수가 서버 성능의 임계치에 달하면 웹사이트 속도는 급격히 저하되고 페이지 하나 열리는데 5초에서 10초이상이 걸리는 일이 발생하게 됩니다.

아무리 잘만들어진 사이트라 할지라도(그것이 쇼핑몰이든지 유명 뉴스진이든지) 느린 속도는 애써 확보한 고객과 구독자를 잃어버리는 지름길입니다.
느린 웹사이트는 인터넷 사용자들이 가장 싫어하는 웹사이트 접근성 요소 중의 하나이기도 합니다.

결국 운영자는 급한 마음에 사이트 속도 저하를 막기 위해서 비용을 들여가면서 호스팅 서버의 메모리를 늘려보고 SSD나 CDN등 여러가지 하드웨어적인 기술을 적용해보지만 결국 플러그인을 최적화 하지 않고서는 또 사이트 속도의 문제는 필연적으로 발생합니다.

그래서, 사이트 성능을 위해서 비용을 들이는 것보다 가장 먼저 해야하는 일은 평소에 플러그인을 최적화 상태로 유지하는 습관을 들이는 것이 중요합니다. 플러그인을 최적화 하고서도 시스템의 속도와 성능 문제가 발생한다면 테마나 프로그램 소스를 확인해야 하고 그렇게 해서도 문제가 해결되지 않는다면 그때가서 비용을 지불하고 하드웨어 증설이나 튜닝을 진행해도 늦지 않습니다. 성능을 위해서 가장 먼저 관심을 가져야 할 것은 역시 플러그인의 최적화 입니다.


훌륭한 플러그인 성능 측정 도구 P3 Plugin


정량적으로 몇 개까지의 플러그인이 사이트에 좋다라고 말할 수는 없습니다. 단 한개의 플러그인도 시스템 퍼포먼스와 자원을 소진시킬 수 도 있기 때문입니다. 플러그인의 성능을 점검하는데 많이 사용하는 유용한 도구는 P3 플러그인입니다.
P3 플러그인의 정확한 명칭은 Plugin Performance Profiler 입니다. 세 개 단어의 앞자리 영문 P자를 따서 P3라고 명명하였습니다.
명칭 그대로 플러그인의 퍼포먼스를 점검하는 도구입니다. 따라서 점검 도구인 P3 플러그인으로 플러그인의 자원 점유 현황을 그때 그때 점검하면서 플러그인의 유지와 삭제를 결정해야 합니다.

P3 플러그인 설치하기


왼쪽 사이드바 메뉴에서 플러그인 추가하기 메뉴를 클릭합니다.


플러그인 검색창에서 P3 Plugin 을 입력하고 엔터키를 칩니다. 첫 번째 검색된 P3(Plugin Perfamance Profiler)의 지금 설치하기 버튼을 클릭합니다.



플러그인을 활성화 링크를 클릭합니다.




P3 플러그인으로 성능 점검하기


왼쪽 사이드바 메뉴에서 도구를 클릭하면 아래 서브 메뉴로 P3 Plugin Profiler 라는 항목이 생성된 것을 확인할 수 있습니다. P3 Plugin Profiler 를 클릭합니다.



P3 플러그인의 관리 화면이 아래와 같이 뜹니다. 현재 워드프레스 사이트에 설치된 플러그인 갯수는 총 19개 입니다. 이제 성능 점검을 시작하기 위해서 왼쪽에 Start Scan 버튼을 클릭합니다.



Scan name 항목에 플러그인 자동 점검을 위한 작업 명칭을 작성할 수 있습니다. 날짜와 유니크아이디로 sacn 작업 명칭이 생성되므로 그대로 두고 Auto Scan 버튼을 클릭합니다.



P3가 자동으로 워드프레스 사이트의 모든 플러그인 항목을 스캔하면서 아래 화면과 같이 점검하고 있습니다.



플러그인에 대해서 모든 점검이 끝나면 아래와 같이 View Results 버튼이 나타납니다. View Result 버튼을 클릭합니다.



플러그인에 대한 성능 점검이 모두 완료되고 아래와 같이 플러그인 성능 점검 리포트가 제공됩니다. 오렌지 박스에 있는 점검 결과를 왼쪽부터 순서대로 보겠습니다.

첫번째 항목은 사용자가 웹사이트 방문시 플러그인이 로드되는 시간으로 1.456초 입니다. 튜닝이 필요한 로드시간 입니다.
두번째 항목은 페이지가 로딩되는데(열리는데) 플러그인이 미치는 영향도로 89.9% 입니다. 두번째 역시 플러그인의 영향도가 높은 것을 알 수 있습니다.
세번째 항목은 사용자가 웹사이트 방문시 실행되는 MySQL 데이터베이스의 쿼리 수행 갯수로 60개의 방문자당 60개의 DB 쿼리가 수행되는 것을 나타냅니다. 



Runtime by Plugin


이제 첫번째 탭인 Runtime by Plugin 항목을 알아보겠습니다. 이 화면에서는 플러그인의 영향도를 쉽게 확인할 수 있는 원형 인포그라피로 어떤 플러그인의 영향도가 높은지를 정량적으로 시각화해서 확인할 수 있습니다.

눈으로 보아도 단번에 보라색과 노란색인 Kboard와 킹콩보드가 전체 플러그인의 70% 이상의 성능 자원을 점유하고 있음을 알 수 있습니다. 플러그인을 실습하느라 게시판 플러그인을 여러개 설치한 것이 자원을 상당부분 점유하였습니다. 일반적으로 게시판 플러그인은 자원을 많이 소진시킵니다. 다른 나머지 플러그인들을 모아 놓은 오렌지색의 Other는 플러그인의 갯수는 많아도 영향도가 크지 않음을 알 수 있습니다.



원형 도형 그래프에서 각 항목이 개별적으로 얼마만큼의 메모리 자원을 점유하고 있는지 확인하려면 원형 도형 위에 마우스를 올려놓으면 됩니다. KBoard 위에 마우스를 가져다 댑니다. KBoard 플러그인은 아래 화면에서와 같이 47%의 메모리 자원을 점유하고 있으며 플러그인 로딩 시간은 0.6854초가 걸립니다. 다른 플러그인도 이렇게 개별적으로 성능 점검을 할 수 있습니다.

또한, Email these results 링크를 클릭하면 점검 결과를 이메일로 전송할 수도 있습니다.



코어, 테마를 포함한 자원 점유 현황 확인


플러그인 뿐 아니라 워드프레스 시스템에 대한 전체적인 자원 점유 현황을 확인하기 위해서는 두 번째 탭인 Detailed Breakdown 탬을 클릭합니다. Detailed Breakdown을 보면 전체적인 사이트 로드 시간과 워드프레스 코어와 테마가 시스템 메모리 자원을 얼마나 점유하는지 그래프로 쉽게 확인할 수 있습니다. 



워드프레스 시스템의 메모리 점유 현황


워드프레스 시스템을 호스팅 받아서 사용하고 있다면 반드시 확인해야 하는 항목이 있습니다. 바로 메모리 사용 현황입니다. 메모 리 사용 현황을 확인하기 위해서는 맨 오른쪽에 Advanced Metrics 탭을 클릭해서 확인합니다. Memory Usage 부분이 워드프레스가 사용하고 있는 메모리 자원의 사용량입니다. 현재 96.58MB 입니다. 메모리 관리가 중요한 것은 호스팅에서 사용자의 메모리 사용량을 제한하기 때문입니다. 호스팅에서 제한하고 있는 메모리 Max 값을 초과하게 되면 시스템은 일종의 Out of Memory 에러를 발생할 수 있습니다.



플러그인 성능 점검 이력 보기


플러그인의 성능 점검 이력을 확인하기 위해서는 아래와 같이 두번째 History 탭을 클릭하면 됩니다. 아래 화면에서 보는 것 처럼 P3 플러그인으로 성능 점검한 이력이 목록화 되어서 나타납니다. 따라서 플러그인이 추가되거나 삭제되어도 정기적으로 성능 점검을 하였다면 서로 비교하면서 플러그인의 영향도를 평가할 수 있습니다. 

목록에서 점검했던 이름을 클릭합니다.



이력 상세화면에서 점검했던 결과 전체를 언제든지 다시 확인할 수 있습니다.




+ Recent posts