워드프레스 속도 향상 고려사항

참고: 인기 테마인 BE 테마(33%)The 7(35%) 할인 행사를 진행하고 있습니다.
참고

워드프레스 하면 쉽게 웹사이트를 만들 수 있다는 것과 함께 속도가 느리다라는 생각을 가질 수도 있을 것입니다. 지난 1년간 이 ‘속도’ 때문에 나름대로 많은 고민을 했습니다. 그래서 이때까지의 경험을 바탕으로 속도 향상을 위해 고려해볼 사항에 대해 정리해보았습니다.

다양한 요소가 사이트 속도에 영향을 미칠 수 있습니다. 우선 크게 외적인 요소와 내적인 요소를 생각해볼 수 있습니다. 외적인 요소는 웹호스팅 서버 사양과 성능이 해당할 수 있겠고, 내적인 요소는 사용 중인 워드프레스의 테마, 플러그인 등이 해당될 것입니다.

웹호스팅 서버

우선 웹호스팅 서버의 성능이 좋아야 속도가 빠르다는 것은 누구나 쉽게 생각해볼 수 있습니다. 이 블로그의 경우 현재도 몇 가지 요인 때문에 속도가 만족스럽지 않지만 초기에는 공유 호스팅(Shared hosting) 서비스를 사용하여 속도면에서 문제가 많았습니다. 특히 서버 반응 시간(Server Responsive Time)이 너무 오래 걸렸습니다. (사실 이런 문제는 워드프레스 최적화를 통해 어느 정도 해결할 수 있는 문제였지만 당시에는 캐시 플러그인 등을 사용하지 않아서 속도가 다소 느렸습니다. 공유 호스팅이라고 하더라도 사이트 최적화만 잘 되면 비교적 쾌적한 속도를 낼 수 있습니다. 이 글을 참고해보세요.)

만약 상업용 사이트라면 사용자가 방문했을 때 몇 초 간 기다려야 한다면 어떻게 될까요? 대부분 금방 사이트를 나갈 것이고, 그렇게 되면 영업에 심각한 타격이 오겠죠. 그러므로 속도가 빠른 사이트를 원한다면 제일 먼저 제대로 된 웹호스팅 서버를 선택해야 할 것입니다. 이것은 비용과 직결되어 있습니다. 아무래도 성능이 좋으면 비용도 높아지는 측면이 있겠죠.

또 하나는 국내 서비스를 사용할 것인지, 아니면 해외 웹호스팅 서비스를 사용할 것인지에 대한 고려입니다. 해외 웹호스팅 서비스의 경우, 상품(Plan)에 따라 차이가 있지만, 트래픽과 하드 용량이 국내에 비해 비교할 수 없을 정도로 많이 제공됩니다. 그러므로 트래픽이 많이 그림, 동영상 등이 많은 경우 해외 호스팅 서비스가 유리할 것입니다. 하지만 국내에서 서비스하는 경우 해외 호스팅 서버를 이용하는 경우 약간의 딜레이(지연)가 있는 것 같습니다. 클라이언트와 직접 테스트를 해봤는데요, 서버 반응 속도가 국내에서 해외 웹호스팅 서버(iPage)에 접속할 때와 싱가포르에서 접속할 때 조금 차이가 있었습니다. 해외를 상대로 서비스를 하는 경우 해외 웹호스팅 서비스를 이용하는 것이 올바른 선택일 것입니다. (해외를 상대로 하면서 국내 웹호스팅 서비스를 이용하는 것은 잘못된 선택이지 않을까 생각되네요.) 하지만 국내를 상대로 서비스를 할 경우 용량/트래픽 및 비용 대비 속도 측면을 고려하여 적절한 웹호스팅 서비스를 선택하는 것이 중요할 것 같습니다.

그리고 대부분의 호스팅 업체에서는 PHP 5.x를 제공하지만 PHP 7에서 워드프레스를 운영하면 속도가 현저히 빨라진다고 합니다.

워드프레스와 PHP 7

Source: https://blog.webfaction.com/2015/12/wordpress-4-4-is-here/

 

테마와 플러그인

워드프레스의 가장 큰 강점 중 하나는 테마를 자유롭게 사용할 수 있다는 점일 것입니다. 인터넷에 수많은 워드프레스 테마가 있습니다. 무료 테마부터 AVADA, Enfold, The 7 등과 같은 유료 테마에 이르기까지 정말로 다양합니다.

아마 많은 분들이 테마포레스트에서 유료 테마를 구입하여 사용할 것입니다. 하지만 여기에서 판매되는 인기 테마들은 대부분 레이아웃은 우수하지만 여기에 반비례하여 속도면에서 문제를 야기할 확률이 높습니다. Visual Composer, Revolution Slider 등과 같은 플러그인을 사용하여 쉽고 빠르게 사이트를 구축할 수 있도록 지원하지만, 이런 테마와 플러그인은 리소스를 많이 차지하므로 아무래도 사이트 속도에 부정적인 영향을 미칠 수밖에 없습니다.

어떤 분은 테마포레스트에서 판매되는 우커머스(WooCommerce)용 테마를 ‘쓰레기’라고까지 표현하는 것을 본 적도 있습니다. 사이트 속도가 느려지면 방문자 이탈률이 높아지고, 방문자가 이탈률이 높아지면 매출이 감소하니 ‘쓰레기’가 아니면 뭐냐는 것이죠. 분명 일리가 있는 말입니다. 너무 효과를 중시하다 보면 사이트 속도 저하를 가져오게 되고, 매출에도 부정적인 영향을 미치겠죠.

이 사이트의 테마는 포트폴리오 형식으로 글을 배열하고 여러 가지 내장 플러그인이 포함되어 있어 속도에 부정적인 영향을 미치는 것 같습니다. 우선은 필요 없는 플러그인을 비활성화하고 사용하고 있습니다. 여유가 되고 시간이 되면 속도가 빠른 테마로 바꿀 예정입니다. 다음 테마는 효과보다는 속도를 중시해서 바꾸려고 생각 중입니다. 이런 컨셉에 맞는 테마를 조금 검색해봤는데, 그 중에 GoMedia라는 테마가 괜찮은 것 같습니다. 해외 리뷰를 보면 속도가 매우 빠르다고 나오네요. 실제로는 얼마나 빠를지는 모르겠습니다. (그리고 이 테마는 한 번 구입으로 무제한 도메인에 사용 가능하다고 하네요. 클라이언트 사이트에도 제한 없이 설치할 수도 있고요. 라이센스 조건은 마음에 듭니다.)

속도를 중시한다면 특히 플러그인의 설치를 최소화하는 것이 중요합니다. P3 (Plugin Performance Profiler) 플러그인을 사용하여 현재 사용 중인 사이트에서 속도 먹는 하마가 없는지 체크할 수 있습니다.

P3 Profiler - 워드프레스 사이트에서 속도를 저하시키는 플러그인 체크

이 플러그인을 사용하여 현재 블로그에서 속도에 영향을 미치는 플러그인을 확인하여, 필수 플러그인이 아니라면 과감히 퇴출하는 것도 고려해보면 좋을 듯합니다. 이 사이트에도 속도를 저하시키지만 삭제하기에는 망설여지는 플러그인이 몇 개가 있습니다. JetPack도 그 중에 하나입니다. 이 플러그인도 덩치가 크기 때문에 사이트에 부담을 많이 줍니다. (어떤 사이트에서는 JetPack을 설치하니 제대로 돌아가지 않는 현상이 발생하기도 합니다.)

체크를 해보니 Contact Form 7도 속도에 부정적인 영향을 주네요. 이 플러그인 대신 Quform 같은 유료 플러그인으로 대체해도 되지만, 굳이 개인 블로그에 유료 플러그인까지 설치할 필요가 없을 것 같아서 울며 겨자 먹기 식으로 사용하고 있습니다. 이외에도 케이보드와 같은 게시판 플러그인도 설치할 필요가 없다면 하지 않는 것이 속도에는 유리할 것입니다.

그럼, 플러그인의 사용을 최소화한다면 필요한 기능을 어떻게 구현해야 할까요? 많은 경우 인터넷을 검색하여 간단한 코드로 구현이 가능하다면 굳이 플러그인을 설치할 이유가 없습니다. (하지만 그런 작업이 어렵거나 불가능한 경우에는 어쩔 수 없이 플러그인을 설치해야 할 것입니다. 그런 경우 P3 플러그인을 통해 속도에 영향을 가장 덜 미치는 플러그인을 선택하면 도움이 될 것 같습니다.) 그리고 슬라이드 같은 경우도 꼭 필요한 경우가 아니면 사용하지 않는 것이 좋겠죠. 또, 그림 파일도 크기를 줄여야 사이트 속도 저하를 방지하는 데 도움이 된다는 것은 누구나 알고 있을 것입니다.

구글 애드센스 광고

작년에 사이트 속도가 느려서 Bluehost에 여러 번 연락하여 귀찮게 한 적이 있습니다. 그 중 한 상담원이 사이트 속도(특히, 서버 반응 속도)가 느린 이유 중 하나로 구글 애드센스 광고를 언급했습니다. 아무래도 애드센스 광고 스크립트를 외부에서 끌어와야 하므로 사이트에 부정적인 영향을 미치는 것 같습니다.

구글 애드센스는 계륵(鷄肋)과 같은 존재 같습니다. 있으면 푼 돈이라도 벌 수 있지만 애드센스로 제대로 수익을 낸다는 것은 거의 불가능한 것 같습니다. 이 블로그와 같이 워드프레스 관련 정보를 제공하는 사이트의 경우 수익면에서 최하위에 해당되지 않나 생각됩니다. 특히 개발자/프로그래머 방문자들은 트래픽만 잡아 먹지 수익에는 전혀 도움이 되지 않습니다. HackYa님이 작성한 “워드프레스로 절대 돈을 벌 수 없는 이유” 글을 참조해보시기 바랍니다.

이 블로그의 경우 애드센스 광고로 호스팅 비용도 나오지 않습니다. 특히 민감한 카테고리(성과 관련되거나 도박과 관련되는 카테고리 등)가 표시되지 않도록 설정해서 수익이 더 떨어지는 것 같습니다. (개인적으로 게임도 별로 좋아하지 않아서 차단했다가 최근에 해제했습니다.)  그러므로 Affiliate 프로그램이나 다른 방식으로 수익을 낼 수 있는 방안을 강구하는 것도 좋을 듯하지만 이 또한 쉽지 않은 것이 현실이네요.

CloudFlare(클라우드플레어)

어떤 분이 워드프레스 사이트 속도가 너무 안 나와서 CloudFlare(클라우드플레어)를 사용하면 어떤지 물어온 적이 있습다. 그때 인터넷을 조금 검색해보았습니다.

CloudFlare는 사이트 속도를 높이고 멀웨어와 기타 위협으로부터 보호하기 위해 Reverse Proxy로 작동하는 CDN(Content Delivery Network) 시스템이라고 합니다. Reverse Proxy? 이런 용어는 생소하네요. 궁금하신 분은 이 글을 참고해보시기 바랍니다.

클라우드플레어의 장단점에 대한 내용은 아래 글을 참고해보시기 바랍니다(영문).

조금 검색을 해보니 클라우드플레어를 사용하면 사이트 속도는 확실히 빨라지는 것 같습니다. 하지만 구글 검색에서 문제가 발생한다고 하네요. 그래서 지난 해에 클라우드플레어 사용을 고려했다가 그만 둔 적이 있습니다. SEO 평가 측면에서 심각한 문제가 있다고 합니다. 속도도  중요하지만 인터넷에서 검색이 제대로 되지 않으면 무슨 의미가 있겠습니까? 어떤 면에서 문제가 발생하는지는 이 글이 도움이 될 것 같습니다.

캐시 플러그인

많은 경우 캐시 플러그인을 설치하면 속도 개선에 도움이 될 수 있습니다. 하지만 이 또한 복불복 비슷한 것 같습니다. 전혀 효과가 없다는 사용자도 있고 심지어 속도가 늦어졌다고 불평하는 사용자도 있습니다. 간혹 (정말 간혹) 있지만, 사이트가 불통이 되어 낭패를 보는 경우도 발생하기도 합니다.

캐시 플러그인을 고려한다면 크게 W3 Total CacheWP Super Cache 중에서 사용할 수 있습니다.

이 두 플러그인으로 효과를 보지 못했다면 WP Fastest Cache 플러그인도 한 번 고려해보시기 바랍니다. 개인적으로 이 플러그인을 사용하여 속도가 눈에 띄게 향상된 적이 있습니다. 하지만 어떤 분은 사이트 오류가 난다고도 하네요. 이래서 복불복이라고 표현한 것입니다. 어떤 사이트에서는 잘 되지만 어떤 워드프레스 사이트에서는 사이트 자체가 불통이 되는 황당한 현상이 나타나기도 하죠. (캐시 플러그인을 설치하기 전에 가급적 사이트를 백업해놓으면 추후에 오류가 나더라도 쉽게 복구가 가능할 것입니다.)

참고: 무료 캐시 플러그인으로 효과를 보지 못하는 경우에는 WP Rocket 등의 유료 캐시 플러그인을 설치하면 속도 개선 효과가 있다고 합니다.

속도 저하 요인 파악하기

구글에서 제공하는 PageSpeed Insights 페이지에서 사이트 속도를 측정할 수 있습니다(정확하게는 사이트의 속도라기보다는 사이트의 최적화 점수). 여러 가지 요소를 감안하여 모바일과 PC(데스크톱)에 대한 점수를 제공합니다.

PageSpeed

이 사이트의 속도를 측정해보면 79점이 나오네요(2016년 9월 초). 모바일에서는 이 보다 낮게 나옵니다.  플러그인 몇 개를 비활성화시키고 테마를 가벼운 것으로 바꾸면 아마 더 높아지지 않을까 생각되네요.

PageSpeed Insights는 단순히 속도 점수를 제공하는 사이트가 아니라, 사이트 제목처럼 속도를 올리는데 필요한 Insight 즉 통찰력을 제공해주는 사이트입니다. 이 사이트를 잘 활용하면 사이트 속도를 올리는 데 도움이 될 것입니다. gzip compression이나 Browser Caching 관련 권고가 나오는 경우 이 글을 참고해보시기 바랍니다.

추가: 참고로 현재 이용 중인 Bluehost VPS를 다른 분께 권해드려서 동일한 서비스의 서버에서 워드프레스의 로딩 속도가 1초 미만으로 나오고 있는 사이트가 있습니다. 속도는 웹호스팅 서버와 함께 테마의 최적화 여부와 밀접하게 관련되어 있는 것 같습니다. iPage의 최저가 상품인 iPage Essential을 이용하고 있는 다른 블로그의 경우 가벼운 테마를 사용해서 그런지 PageSpeed Insights 점수가 90점이 나옵니다.

PageSpeed그리고 로딩 속도도 1초 내외로 비록 웹호스팅 서버가 별로 좋지 않아도 빠른 속도를 보입니다.

iPage-speed

자세한 내용은 여기를 참고해보세요.

여러 가지 사항을 종합해보면 속도는 사용 중인 웹호스팅 서버, 테마의 최적화 정도, 캐시 플러그인 설치 등에 의해 좌우되는 것 같습니다.

개인적인 경험으로는 캐시 플러그인이나 Minify 플러그인이 속도 향상에 약간의 도움이 될 수 있지만, 서버 성능, 좋은 테마, 플러그인 최소화(속도에 영향을 주는 플러그인 삭제) 등의 조치도 병행해야 만족할만한 속도 향상 효과를 볼 수 있으리라 생각됩니다.

참고:

마치며

사실 위의 글은 새로운 정보가 아닙니다. 개인적인 경험에 기초하여 개인적인 관점에서 작성했기 때문에 참고만 하시기 바랍니다. 아무래도 속도 향상은 개별 사안에 따라 접근법을 조금씩 달리해야 할 것입니다.

구글 검색에서 순위를 매길 때 사이트 속도도 고려한다고 하니 사이트 속도 최적화가 어느 정도는 필요할 것 같습니다. 중요한 것은 첫 단추를 잘 꿰는 것이겠죠? 성능이 괜찮은 웹호스팅 서비스를 선택하고 슬림한 테마를 선정하는 작업부터 시작해보시기 바랍니다.

이미 이런 요소를 바꿀 수 없다고요? 그렇다면 PageSpeed Insights 페이지에서 속도를 잡아 먹는 요소가 무엇인지 파악하여 하나씩 개선해보시기 바랍니다. 또, P3 프로파일러 플러그인을 사용하여 사이트의 속도를 느리게 하는 플러그인을 파악하여 유사한 기능의 다른 플러그인으로 대체하는 것도 고려해보시기 바랍니다. 마지막으로 캐시 플러그인과 Minify 플러그인 설치도 고려해볼 수 있을 것입니다.

참고:



기부를 통해 이 블로그를 후원하실 수 있습니다.
워드프레스 설치/제작/문제해결이 필요한 경우 서비스(유료)를 요청해주세요.