워드프레스 서버 사양 계산하고 옮기는 방법

워드프레스 서버 사양 계산하고 옮기는 방법

얼마 전 하루 방문자가 300명쯤 되는 워드프레스 사이트에서 서버를 올려야 하느냐는 질문을 받았다. 관리자 화면이 느리고 가끔 접속이 끊긴다는 이유였다. 확인해 보니 메모리 부족보다 오래된 플러그인의 반복 작업과 실패한 자동 백업이 문제였다. 서버를 바꾸기 전에 어디서 자원이 쓰이는지 보는 편이 빠르다.


방문자 수를 서버 부하로 바꾸기


월 방문자 수만으로 요금제를 고르면 과하게 쓰기 쉽다. 먼저 한 달 페이지 조회 수를 30으로 나눠 하루 평균을 구하고, 실제로 바쁜 시간대의 조회 수를 확인한다. 월 3만 페이지 조회라면 하루 평균은 1천 회다. 그중 20%가 가장 바쁜 한 시간에 몰려도 시간당 200회, 초당 약 0.06회다. 평균 수치만 놓고 비싼 서버를 살 이유는 없다.


다만 초당 요청 수와 동시접속자는 다르다. 검색엔진 수집, 광고 유입, 행사 안내처럼 짧은 시간에 방문자가 몰리면 한 시간 평균이 평온해 보여도 수십 명이 동시에 페이지를 열 수 있다. 접속 기록에서 가장 바쁜 5분을 따로 확인해야 하는 이유다. 이미지와 글이 캐시에서 전달되는지, 매번 워드프레스가 페이지를 새로 만드는지도 함께 본다.


  • 글을 읽는 방문자가 대부분이고 페이지 캐시가 정상이라면 저가형 웹호스팅부터 검토한다.
  • 로그인 사용자, 장바구니, 회원별 화면이 많다면 캐시가 적용되지 않는 요청의 비율을 따로 센다.
  • 예약 작업이나 무거운 검색 플러그인이 있다면 방문자 수가 적어도 CPU와 데이터베이스 사용량을 확인한다.

예를 들어 캐시가 적용되지 않는 요청이 초당 2회이고 요청 하나가 PHP 작업자를 0.5초 점유한다면, 평균적으로 작업자 1개가 계속 바쁜 셈이다. 실제 운영에는 순간적인 몰림과 느린 외부 연동을 감당할 여유가 필요하다. 이 계산은 출발점일 뿐이다. 응답 시간과 대기 중인 요청 수를 같이 봐야 작업자 수를 정할 수 있다.


웹호스팅과 VPS 중에서 고르기


회사 소개나 작은 블로그처럼 운영 방식이 단순하면 웹호스팅이 편하다. 서버 보안 업데이트와 기본 관리 부담이 작고, 월 3만 페이지 조회 안팎의 콘텐츠 사이트라면 캐시를 켠 저가 요금제로 충분한 경우가 많다. 다만 업체마다 CPU 사용 제한, 동시 실행 수, 백업 보관 기간이 다르다. 디스크 용량 숫자보다 이 제한을 먼저 읽는다.


VPS는 서버 설정과 작업 시간을 직접 통제해야 할 때 고른다. 워드프레스와 데이터베이스를 한 서버에 놓는 작은 사이트라면 1개 가상 CPU와 메모리 2GB를 시작 사양으로 잡을 수 있다. 1GB에서도 가볍게 구성하면 돌아가지만, 업데이트나 이미지 처리 때 여유가 좁다. 관리자 화면이 느리다고 곧바로 CPU를 늘리지 말고 메모리 부족 기록, 저장 장치 대기 시간, 느린 데이터베이스 질의를 먼저 확인한다.


저장 공간도 현재 파일 크기만 보면 부족하다. 업로드 파일 5GB, 데이터베이스 1GB라면 운영 공간에 더해 업데이트 임시 파일과 로그가 쌓일 자리를 남겨야 한다. 서버 안에 백업 사본까지 보관하면 공간을 두 번 쓰게 된다. 백업은 장애 때 같은 서버와 함께 사라지지 않는 별도 저장소에 두는 편이 안전하다.


광고

이전할 때는 복원부터 확인하기


워드프레스 이전에서 자주 빠지는 것은 파일보다 데이터베이스의 마지막 변경분이다. 먼저 전체 파일과 데이터베이스를 백업하고, 새 환경에서 복원해 글·이미지·관리자 로그인·문의 양식을 확인한다. PHP 버전과 플러그인 호환성도 이때 확인한다. 백업 파일이 있다는 사실과 실제로 복원된다는 사실은 다르다.


전환 직전에는 기존 사이트의 글 작성이나 주문 접수를 잠시 멈추는 시간을 잡는다. 마지막 데이터베이스 사본을 옮긴 뒤 새 서버에서 기능을 확인하고 접속 대상을 바꾼다. 접속 정보가 퍼지는 동안 일부 방문자는 이전 서버로 갈 수 있으므로, 기존 서버를 바로 내리지 않는다. 쇼핑몰이라면 전환 중 주문이 두 서버에 나뉘지 않도록 접수 중단 범위를 더 신중히 잡아야 한다.


SSL 인증서도 새 서버에서 먼저 준비한다. 접속 대상만 바꾸고 인증서가 빠져 있으면 사이트는 살아 있어도 방문자에게 보안 경고가 뜬다. 전환 후에는 일반 글 한 개와 로그인 화면만 볼 게 아니라 이미지, 검색, 문의, 결제처럼 실제 방문자가 쓰는 경로를 눌러 확인한다.


접속이 안 될 때 확인할 순서


장애가 나면 우선 범위를 좁힌다. 내 컴퓨터에서만 안 열리는지, 여러 네트워크에서 같은지 확인한다. 이어서 접속 정보가 새 서버를 가리키는지, 인증서 오류인지, 서버가 응답하는지를 차례로 본다. 서버가 응답한다면 웹서버 오류 기록과 PHP 오류 기록을 확인하고, 그다음 데이터베이스 연결과 디스크 사용량을 본다.


  • 접속 자체가 되지 않으면 접속 대상 설정, 방화벽, 서버 상태를 확인한다.
  • 보안 경고가 뜨면 인증서 발급 상태와 적용 대상을 확인한다.
  • 화면에 오류가 뜨면 최근 업데이트 기록과 웹서버·PHP 오류 기록을 맞춰 본다.
  • 관리자 화면만 느리면 플러그인 작업, 데이터베이스 질의, 예약 작업을 확인한다.

자동 백업은 매일 실행하고 보관 기간을 정하되, 한 달에 한 번은 별도 환경에서 복원해 보는 게 좋다. 특히 플러그인 업데이트 전에는 즉시 되돌릴 수 있는 사본이 있어야 한다. 제가 운영해 온 사이트에서도 서버 크기보다 복원 가능 여부가 사고 시간을 더 크게 갈랐다. 작은 사이트라면 우선 저렴한 사양으로 시작하고, 측정한 사용량과 복원 연습 결과를 보고 다음 비용을 쓰는 쪽이 낫다.

워드프레스 서버 사양 계산하고 옮기는 방법 - 요약
광고

댓글 0

평가를 남기려면 로그인해 주세요.

모두 ID로 로그인

불러오는 중…