워드프레스용 클라우드웨이즈 서버 CPU 폭주 원인 분석과 최적화 가이드

워드프레스 정보를 제공하는 블로그 Avada 2026. 1. 29. 16:44 • 댓글:

서버를 직접 생성하여 워드프레스 사이트를 운영하다 보면 갑자기 CPU 사용량이 100%를 기록하면서 서버가 다운되거나 사이트 속도가 느려지는 문제가 드물게 발생할 수 있습니다. 이 경우 CPU 사용량 급증의 원인을 찾아서 직접 해결해야 합니다. 클라우드웨이즌(Cloudways)는 24시간 연중무휴 라이브 채팅을 통해 서버 문제와 워드프레스 문제에 대한 지원을 제공합니다. 클라우드웨이즈를 이용한다면 먼저 라이브 챗으로 고객지원센터로 연락하여 문제의 원인에 대하여 문의해 볼 수 있습니다. 문제의 원인을 파악하면 해결 방법을 결정할 수 있습니다.

📍 클라우드웨이즈 할인 프로모 코드 & 가입 방법 (+45% 쿠폰)

워드프레스용 클라우드웨이즈 서버 CPU 폭주 원인 분석과 최적화 가이드

워드프레스용 클라우드웨이즈 서버 CPU 폭주 원인 분석과 최적화 가이드

클라우드웨이즈에서 운영 중인 워드프레스 사이트에 접속이 안 되거나 속도가 매우 느려진다면 CPU 급증이나 메모리 부족 문제를 먼저 체크해볼 수 있습니다.

서버 관리 페이지의 Monitoring » Summary에서 서버 상태를 확인할 수 있습니다.

보통은 위의 그림과 같이 표시되지만, 램 사용량이 급증하거나 CPU 사용률이 100% 가까이 오르면 Server HealthProblematic이 표시되면서 서버가 다운되거나 속도가 매우 느려질 수 있습니다.

먼저 해 볼 수 있는 조치로는 서버 재시작으로 장시간 실행 중인 프로세스를 종료하고 CPU 부하를 일시적으로 줄이면 정상으로 돌아올 수 있습니다. 하지만 잠시 후에 다시 CPU 사용률이 급증하는 경우에는 본격적으로 원인을 찾아서 해결해야 문제가 재발하지 않습니다.

참고로 하나의 서버에 많은 워드프레스 사이트가 추가되어 있거나, 멀티사이트로 많은 사이트를 운영하는 경우 램(RAM) 부족 현상으로 문제가 발생할 수 있습니다. 이 경우에는 사이트를 최적화하고, 그래도 해결이 안 되는 경우에는 서버 크기를 늘리거나 사이트 개수를 줄여야 할 수 있습니다.

예를 들어, 비슷한 사이트(예: 분양 사이트)를 10개 혹은 수 십 개를 운영하려는 경우 멀티사이트를 이용하면 편리합니다. 하지만 서버 크기에 비해 너무 많은 사이트가 연결되면 램 부족이나 CPU 사용량 증가로 인해 문제가 될 수 있습니다.

 

클라우드웨이즈(Cloudways)에서 워드프레스 블로그 100개를 만드는 방법 - 워드프레스 정보꾸러미

클라우드웨이즈(Cloudways)의 경우 하나의 서버에 여러 개의 애플리케이션(워드프레스 등)을 추가하여 여러 개의 사이트를 운영할 수 있습니다. 만약 10개 또는 100개 사이트를 운영해야 한다면, 애

www.thewordcracker.com

CPU 사용률이 급증하면서 서버에 문제가 발생하는 경우 먼저 라이브 챗으로 고객센터에 연락하여 문제의 원인에 대하여 문의하여 답변에 따라 적절한 조치를 취하시기 바랍니다.

아래는 CPU 사용률 폭주 문제를 야기할 수 있는 주요 원인들을 정리해보았습니다. 저는 제가 관리하는 서버와 다른 사용자들의 서버에서 CPU 사용량 급증 문제를 자주 접하게 됩니다. 대부분 원인이 조금씩 다르지만, 아래의 내용을 참고하여 문제 해결을 시도해 볼 수 있을 것입니다.

1. 봇들의 과도한 방문 (악성·저품질 봇 포함)

사람보다 봇 트래픽이 훨씬 많은 사이트가 의외로 많습니다. 검색엔진 크롤러뿐 아니라 가격 수집 봇, 이메일 수집 봇, 통계·모니터링 봇 등이 무차별적으로 요청을 보내면 PHP와 DB가 계속 돌면서 CPU가 급격히 올라갑니다. 특히 /wp-login.php, /xmlrpc.php, /feed/, /wp-json/처럼 워드프레스에서 무거운 처리가 일어나는 경로를 반복 호출하면 저사양 서버는 금방 100%를 찍습니다.

이 문제는 WAF·방화벽, IP·User-Agent 차단, rate limit, reCAPTCHA, 로그인 URL 변경 등으로 상당 부분 줄일 수 있습니다. 클라우드플레어(Cloudflare)와 같은 CDN을 앞단에 두고, 워드프레스 수준에서는 보안 플러그인으로 로그인·XML-RPC·REST API 요청을 제한하는 식의 다단 방어가 효과적일 수 있습니다.

클라우드웨이즈에서는 애플리케이션 레벨에서 XML-RPC를 비활성화할 수 있습니다. 그림과 같이 XMLRPC Access를 비활성화해야 XMLRPC 요청이 비활성화되어 무작위 대입 공격(Brute Force Attack)을 방어할 수 있습니다.

또한, 구글봇이나 빙봇과 같은 정상적인 봇들도 과도하게 방문하면서 문제가 되기도 합니다. 그런 경우 클라우드웨이즈와 상의하여 적절한 조치를 취할 수 있습니다.

2. 방문자 급증 (정상 트래픽)

광고 집행, 바이럴, 검색 노출 상승 등으로 짧은 시간에 많은 방문자가 몰리면, 평소엔 문제 없던 코드도 한꺼번에 실행되면서 CPU가 치솟을 수 있습니다. 특히 캐시가 충분히 안 잡힌 초기 구간, 로그인 사용자가 많은 서비스, 장바구니·결제 페이지 같은 동적 페이지는 요청 수가 늘어날수록 부하가 비례 또는 그 이상으로 증가합니다.

이 경우에는 Object Cache, 이미지 최적화, 쿼리 최적화를 통해 요청당 작업량을 줄여서 대응할 수 있습니다. 그럼에도 불구하고 트래픽이 계속 증가한다면 서버 크기 업그레이드(스케일 업)도 고려해야 할 수 있습니다.

일시적인 광고 집행으로 단기간 동안 방문자가 급증하는 경우 서버 사이즈를 늘리기도 사실 부담이 될 수 있습니다. 그런 경우 Cloudflare를 활용하여 트래픽을 절감하고 사이트 최적화를 통해 최대한 많은 사용자를 수용할 수 있도록 하면서 서버 전문가를 고용하여 대응하는 것도 생각해 볼 수 있을 것입니다.

3. 잘못 만들어진 플러그인 또는 커스텀 코드

비효율적인 SQL 쿼리, 반복 루프, 외부 API를 동기식으로 매번 호출하는 코드, 관리자 페이지에서 무거운 통계를 실시간으로 계산하는 코드 등은 적은 요청만으로도 CPU를 순간적으로 급증시키기 쉽습니다. 신규 플러그인 설치 후, 특정 기능 활성화 후, 테마 교체 후부터 CPU 스파이크가 시작됐다면 해당 플러그인이 원인일 가능성이 매우 큽니다.

또한, 플러그인을 업데이트하거나 새로운 코드를 추가한 후에 문제가 발생한다면 해당 플러그인이나 코드를 의심해볼 수 있습니다.

플러그인 문제가 의심된다면, 모든 플러그인을 비활성화하여 문제가 발생하는지 체크할 수 있습니다. 플러그인을 비활성화했을 때 문제가 발생하지 않는다면 플러그인 중에 문제를 일으키는 것이 있다고 의심할 수 있습니다. 하나씩 플러그인을 활성화하면서 문제를 일으키는 플러그인을 찾을 수 있을 것입니다.

플러그인은 최소한으로 설치하는 것이 바람직합니다. 트래픽을 줄이려면 문거운 플러그인을 사용하지 않는 것이 좋습니다. 많은 플러그인을 설치하면 충돌이 발생할 수 있고, 의도치 않게 트래픽을 유발하는 잘못된 플러그인이 포함되어 있을 수 있습니다.

4. wp-cron 과다 실행 및 잘못된 크론 작업

워드프레스의 가상 크론(wp-cron.php)은 페이지 요청이 있을 때마다 조건을 보고 작업을 실행하는 구조이기 때문에 여러 작업이 동시에 예약되어 있으면 한 번의 방문에 여러 크론 작업이 한꺼번에 돌아갈 수 있습니다. 사이트가 여러 개이거나, 백그라운드 작업(예약 발행, 자동 백업, 통계 집계, 이메일 발송 등)이 많은 경우 CPU 스파이크의 주범이 되기 쉽습니다.

클라우드웨이즈에서는 Cron Optimizer 툴을 제공합니다. 크론 최적화 툴은 애플리케이션 설정(Application Settings)에서 활성화할 수 있습니다.

Cron Optimizer가 활성화되어 있지 않다면 활성화하도록 합니다.

5. 디도스(DDoS) 공격

정상 사용자가 아니라 공격자가 보내는 대량 요청은, 어떤 최적화도 못 버틸 정도로 서버를 압박할 수 있습니다. 디도스 공격이 의심되면 클라우드웨이즈에 연락하여 공격에 사용되는 IP들을 차단할 수 있습니다. 디도스 공격이 시작되면 서버가 다운될 수 있으며, 공격에 사용되는 IP들을 차단하고 기다리면 서버가 어느 정도 정상화될 수도 있습니다.

저는 작년 8월과 9월 한 달 동안 극심한 디도스 공격을 당했습니다. 처음에는 당황스러워서 방어하기가 쉽지 않았지만, 몇 차례 공격을 당하면서 나름 디도스를 대응하는 방법을 익히게 되었습니다.

 

10번째 디도스 공격... 정말 징하네요

지난 8월 23일 첫 디도스 공격 이후 오늘 10번째 디도스 공격을 받았습니다. 며칠 동안 공격하다 2~3일 정도 쉰 후에 다시 공격을 재개하는 패턴을 반복하고 있네요. 처음에는 제대로 대응을 못해

avada.tistory.com

저는 다음과 같은 방법으로 방어할 수 있었습니다.

  1. 서버 사이즈 업그레이드(2GB 램 서버에서 4GB 램 서버로)
  2. 클라우드플레어 연동. 디도스 공격 알림을 설정하고, 공격이 시작되면 Under Attack 모드로 전환
  3. 클라우드웨이즈에 연락하여 공격에 사용되는 IP 차단

공격에 사용되는 IP는 클라우드웨이즈에 연락하지 않고도 확인이 가능합니다. 직접 IP들을 체크하여 클라우드플레어 보안 규칙에 추가하여 차단할 수 있습니다.

6. 멀웨어 감염 및 백도어

악성 코드가 심어지면, 관리자가 모르는 사이에 스팸 메일 발송, 봇넷 참여, 크립토 마이닝, 파일 스캐닝·유출 등을 수행하면서 CPU를 지속적으로 점유할 수 있습니다. 이때는 트래픽이나 플러그인 패턴으로 설명이 안 되는 "이상한 고정 부하"가 나타나는 경우가 많습니다.

대응은 (1) 신뢰할 수 있는 보안 플러그인 또는 외부 서비스로 전체 파일·DB 스캔, (2) 의심 파일/코드 제거, (3) 코어·테마·플러그인 재설치, (4) 관리자·FTP·DB 비밀번호 전량 교체, (5) 백도어가 남지 않도록 업로드 디렉터리까지 확인하는 순으로 진행합니다.

악성코드 감염이 의심되면 클라우드웨이즈의 복원 기능을 사용하여 감염 전으로 되돌리는 것을 고려할 수 있습니다. 만약 되돌리기에는 너무 오래전에 감염되었거나, 감염 후에 신규로 작성된 콘텐츠가 많거나 사이트가 많이 업데이트되어 사이트를 롤백할 수 없다면 직접 멀웨어를 치료해야 합니다.

👉 멀웨어 감염을 비롯한 워드프레스 또는 웹호스팅 문제로 해결에 어려움을 겪는 경우 여기에서 서비스(유료)를 의뢰하실 수 있습니다.

7. 지나치게 많은 사이트로 인한 서버 리소스 부족

하나의 클라우드웨이즈 서버에 여러 워드프레스(특히 우커머스·LMS·커뮤니티 등 무거운 사이트)를 올려두면, 각 사이트는 정상일지라도 합산 부하로 CPU가 자주 급증할 수 있습니다. 테스트 사이트, 데모 사이트, 잠시 쓰고 방치한 사이트가 많으면, 이들 역시 크론 작업·봇 트래픽·백엔드 스캔 등으로 리소스를 소비합니다.

이 문제는 구조를 나누는 전략이 가장 확실합니다. 트래픽이 있는 상용 사이트와 개발·테스트용 사이트를 분리하고, 트래픽이 많은 사이트는 단독 서버 또는 스펙이 높은 서버로 옮기는 방식입니다. 동시에, 거의 사용하지 않는 사이트는 정리·삭제하거나 정적 호스팅으로 전환해 서버 부하를 줄일 수 있습니다.

클라우드웨이즈에서는 애플리케이션을 일시적으로 비활성화하는 기능을 제공합니다. 너무 오래 비활성화하면 워드프레스, 테마, 플러그인이 업데이트되지 않아서 보안 경고 메일을 클라우드웨이즈로부터 받을 수 있습니다.😄

General 탭의 맨 아래에 Application Access 항목이 있습니다. 이 옵션이 활성화되어야 사이트에 접근이 가능합니다. 비활성화하여 접근을 차단하고 싶은 경우 아래 그림에서 오른쪽 토글 단추를 눌러 비활성화할 수 있습니다.

8. 데이터베이스 및 쿼리 최적화 부족

트래픽, 플러그인, 크론이 동일하더라도 DB 구조와 인덱스, 쿼리 최적화 수준에 따라 CPU 사용량은 크게 달라집니다. 옵션 테이블이 비대해졌거나, 검색·필터 기능이 인덱스 없는 복잡한 쿼리에 의존하고 있다면, 방문자 증가와 함께 CPU도 선형 혹은 그 이상으로 증가합니다.

여기에는 wp_options 자동 로드 값 정리, 필요 없는 로그/통계 테이블 정리, 인덱스 추가, 쿼리 캐시(Object Cache) 도입이 도움이 됩니다. 워드프레스 플러그인 레벨에서는 Query Monitor로 느린 쿼리 상위 몇 개를 찾아, 해당 기능을 끄거나 별도 인덱싱·캐시를 적용하는 식으로 순차적으로 개선하는 접근이 효과적입니다.

저는 게시글이 1만 개가 넘는 워드프레스 사이트에서 잦은 DB 쿼리 수행으로 인해 문제가 된 적이 있습니다. Yoast SEO에서 없는 항목을 찾으면서 쿼리 과부하가 발생했습니다. 결국 Yoast SEO를 제거하고 대신 Rank Math SEO를 설치하여 문제를 해결했습니다.😄

9. Heartbeat API 과다 요청 (관리자 CPU 부하 주범)

워드프레스 Heartbeat API는 관리자 페이지에서 15초(편집기), 60초(대시보드)마다 자동으로 서버에 요청을 보내 실시간 동기화(자동 저장, 사용자 상태, 알림 등)를 처리합니다. 여러 관리자가 동시에 로그인하거나, 관리자 페이지 탭을 여러 개 띄워두면 이 요청이 누적되어 CPU 사용량이 지속적으로 증가할 수 있습니다. 특히 저사양 클라우드웨이즈 서버에서 두드러집니다. 

클라우드웨이즈에서 제공하는 Breeze 캐시 플러그인에서 Heartbeat API 설정을 할 수 있습니다. 저는 다음과 같이 설정하여 사용하고 있습니다.

WP Rocket을 사용하는 경우에도 Heartbeat Control을 활성화하여 설정할 수 있습니다.

참고

https://avada.tistory.com/3881

 

패스트코멧(FastComet)에서 클라우드웨이즈로 워드프레스로 이전 작업

지난 금요일에 패스트코멧(FastComet)에서 클라우드웨이즈(Cloudways)로 워드프레스를 이전하고 추가적으로 서브도메인으로 워드프레스를 생성하여 도메인을 연결하는 작업을 의뢰받았습니다. 패스

avada.tistory.com

https://avada.tistory.com/3826

 

클라우드웨이즈(Cloudways)에서 케미클라우드(ChemiCloud)로 워드프레스 이전 작업

최근 몇 년 사이 우리나라에서 워드프레스 블로그 운영에 클라우드웨이즈(Cloudways)가 많이 이용되고 있습니다. 클라우드웨이즈는 규모가 큰 사이트나 여러 개의 사이트 운영에 적합합니다. 블로

avada.tistory.com