워드프레스: ‘지속적인 객체 캐시를 사용해야 합니다’ 문제 해결하기

오브젝트 캐시를 사용해야합니다.

서론

워드프레스는 인기있는 오픈 소스 콘텐츠 관리 시스템(CMS)으로서 수백만 개의 웹사이트에 사용되고 있습니다. 하지만 때때로 사용자들은 “지속적인 객체 캐시를 사용해야 합니다”라는 오류 메시지를 마주하게 됩니다. 이 오류가 발생하면 웹사이트의 성능과 로딩 속도에 영향을 미치며, 방문자들이 사이트를 원활하게 이용하는 데에도 불편함을 초래할 수 있습니다. 이번 포스팅에서는 워드프레스에서 “지속적인 객체 캐시를 사용해야 합니다” 오류의 원인과 해결 방법에 대해 알아보겠습니다.

워드프레스 캐시란 무엇인가요?

캐시는 웹사이트의 성능을 향상시키기 위한 중요한 요소입니다. 워드프레스 캐시는 웹사이트의 내용과 데이터를 임시로 저장하는데, 이를 통해 이후 방문자들이 해당 페이지를 요청할 때 더 빠르게 로딩할 수 있게 됩니다. 워드프레스는 보통 “페이지 캐시”와 “객체 캐시”를 사용하는데, 이 중 “객체 캐시”가 우리가 다룰 오류의 주요 원인입니다.

객체 캐시는 서버단에서 사용되는 캐시를 의미합니다. 워드프레스에서는 데이터베이스 쿼리 결과나 다른 작업의 결과를 임시로 저장하여, 같은 작업이 반복될 때 다시 처리하지 않고 저장된 결과를 사용함으로써 성능을 향상시키는 기술입니다.

“지속적인 객체 캐시를 사용해야 합니다” 오류의 원인은 무엇인가요?

지속적인 객체 캐시를 사용해야 합니다.
사이트 건강 상태페이지 나오는 ‘지속적인 객체 캐시를 사용해야 합니다’ 개선사항 메세지

워드프레스에서 “지속적인 객체 캐시를 사용해야 합니다”라는 오류는 보통 워드프레스 플러그인과 호스팅 환경 간의 충돌로 인해 발생합니다. 이 오류는 보통 다음과 같은 상황에서 나타납니다.

1. 캐시 플러그인 충돌

캐시 플러그인을 설치하여 웹사이트 성능을 향상시키려는 사용자들은 때로 오류를 마주할 수 있습니다. 일부 플러그인은 서로 충돌을 일으키거나 호스팅 환경과 호환이 되지 않아 오류가 발생합니다.

2. 호스팅 환경과의 충돌

일부 호스팅 회사는 워드프레스의 특정 기능과 충돌을 일으키는 경우가 있습니다. 특히 공유 호스팅 환경에서는 캐시 관련 문제가 발생할 가능성이 높습니다.

3. 오래된 캐시 데이터

객체 캐시는 일정 기간이 지나면 주기적으로 삭제되어야 합니다. 하지만 때로는 오래된 캐시 데이터가 남아있어 오류를 유발할 수 있습니다.

4. 캐시 플러그인의 오브젝트 캐시 미지원

최근에는 캐시관련 플러그인이 굉장히 많아 선택의 폭이 넓습니다. 해당 플러그인이 서버측 캐시인 오브젝트 캐시 기능을 지원하지 않는 경우입니다.

“지속적인 객체 캐시를 사용해야 합니다” 오류 해결 방법

위에서 언급한 원인들로 인해 발생하는 “지속적인 객체 캐시를 사용해야 합니다” 오류를 해결하는 방법은 다양합니다. 아래는 몇 가지 유용한 해결 방법들입니다.

1. 캐시 플러그인 비활성화

먼저, 캐시 플러그인을 비활성화하고 오류가 여전히 발생하는지 확인합니다. 캐시 플러그인이 원인인 경우 비활성화 후 다른 캐시 플러그인을 설치해보는 것도 고려해볼 수 있습니다.

캐시 블러그인을 비활성화 또는 제거를 한후 오류메세지를 확인해 보면 쉽게 알수 있습니다.
캐시 플러그인은 종류가 다양합니다. 본인 환경에 맞는 플러그인으로 교체하면 해결하실 수 있습니다.

캐시 플러그인을 해당 이유로 교체를 해야 한다면 캐시 플러그인 속도 비교 글이 참고가 될 것 같습니다.
https://ljj.kr/워드프레스-속도향상-플러그인-5종-비교실험/

2. 호스팅 업체 문의 또는 서버환경 설정

만약 캐시 플러그인 비활성화가 문제를 해결하지 못한다면, 호스팅 회사와 상담하여 문제의 원인을 파악할 수 있습니다. 호스팅 회사가 원인이라면 호스팅 플랜을 업그레이드하거나 다른 호스팅 서비스를 검토해보는 것이 좋습니다.

자체 서버를 관리하고 있다면 캐시관련 환경이 갖추어져 있지 않은 경우이니 다음 항목을 순서대로 진행해보세요.
먼저 오브젝트 캐시 사용환경인지를 체크합니다. php 환경설정을 봐야 하는데 이것은 다음의 내용을 phpinfo.php로 저장하여 서버에 업로드후 확인합니다.

<?php
   phpinfo();
?>

업로드한 URL을 호출하면 웹 브라우저에 phpinfo() 페이지가 표시될 것입니다. 이 페이지에서 “APCu” 또는 “Memcached“와 관련된 정보를 찾으면 지속적인 객체 캐시 설정에 대한 정보를 확인할 수 있습니다.

캐시가 비활성화가 되어 있는 경우 해당 옵션이 없습니다.

페이지내 검색은 Ctrl + F를 눌러서 찾으시면 됩니다. 저는 해당 옵션이 없는 것 보니 서버에 설정이 안되어 있는 것 같네요.
만약 phpinfo() 페이지에서 “APCu” 또는 “Memcached”와 관련된 정보가 없다면, 지속적인 객체 캐시가 현재 PHP 환경에서 활성화되어 있지 않은 것입니다. 이 경우 워드프레스에서 지속적인 객체 캐시를 사용하려면 다음과 같이 해당 기능을 활성화해야 합니다.

모듈 설치여부 확인 및 설치

먼저 다음 명령으로 해당 모듈이 설치되어 있는지 체크합니다.
두 개의 모듈을 모두 사용할 필요는 없고 서버 캐싱 작업 모듈로 한 개만 선택하여 사용하면 됩니다.

php -m | grep apcu
php -m | grep memcached

설치가 되어 있지 않다면 서버의 PHP 버전에 맞추어 다음 명령으로 설치를 합니다.

sudo apt-get install php7.4-apcu
sudo apt-get install php7.4-memcached

APCu 활성화하기

만약 APCu가 활성화되어 있지 않다면, 다음과 같이 설정해야 합니다.
APCu PHP 확장 기능을 설치하고 활성화하기 위해서는 (PHP 7.4 기준으로) PHP 설정 파일 (php.ini)에 아래와 같은 설정을 추가합니다.

extension=apcu.so # 또는 extension=apcu.dll (Windows) 
apc.enabled=1 
apc.enable_cli=1 # Command Line Interface (CLI)에서도 사용 가능하도록 활성화

Memcached 활성화하기

만약 Memcached가 활성화되어 있지 않다면, 다음과 같이 설정해야 합니다.
PHP 설정 파일 (php.ini)에 아래와 같은 설정을 추가합니다.

extension=memcached.so # 또는 extension=memcached.dll (Windows)

이후 지속적인 객체 캐시 설정을 확인하기 위해 다시 phpinfo() 페이지를 열어보면, 적절한 확장 기능이 활성화되었는지 확인할 수 있을 것입니다. 설정 후에는 워드프레스의 성능과 로딩 속도가 개선되는지 확인하시기 바랍니다.

3. 캐시 데이터 삭제

오래된 캐시 데이터가 문제를 일으킬 수 있으므로, 워드프레스 캐시를 수동으로 삭제해봅니다. 이를 통해 새로운 캐시가 생성되어 오류가 해결될 수 있습니다.

4. 오브젝트 캐시 지원 플러그인 활성화

만약 사용하고 있는 플러그인이 서버측 캐시를 아무것도 지원하지 않는 경우에는 서버측 캐시만 활성화 해주는 플러그인을 추가 활성화면 좋습니다.
다음은 제가 사용하고 있는 Object Cache 4 everyone 플러그인입니다. 업데이트가 자주 있으며 멀티쓰레드로 성능이 우수한 Memcached를 주기능으로 하고 있습니다.

오브젝트 캐시(지속적인 객체 캐시)
Object Cache 4 everyone 플러그인은 서버캐싱(Object Cache)만 활성화 주는 가벼운 플러그인입니다.

참고로 Object Cache 기능을 완벽하게 지원하는 W3 Total Cache를 사용해 보고 싶었으나 서버캐싱 기능에서 충돌이 있어 사용을 못하고 있습니다. ㅠ_ㅠ
아무튼 관리자페이지에 있는 [사이트 건강] 메뉴에서 모든 항목이 다 정상일 때는 기분좋은 스마일이 보이게 됩니다.
휴~ 속시원해…ㅎㅎ

스마일~촵~

결론

“지속적인 객체 캐시를 사용해야 합니다” 오류는 워드프레스 사용자들이 가끔 마주치는 문제입니다. 이 오류를 해결하기 위해 캐시 플러그인 비활성화, 호스팅 회사와 상담, 그리고 캐시 데이터 삭제 등의 방법을 시도할 수 있습니다. 워드프레스 웹사이트의 성능을 향상시키기 위해서는 캐시 관련 문제에 대해 주기적으로 확인하고 관리하는 것이 중요합니다.

자주 묻는 질문 (FAQs)

1. “지속적인 객체 캐시를 사용해야 합니다” 오류가 여전히 발생하는 경우 어떻게 해야 하나요?
위에서 언급한 해결 방법들을 바르게 수행했는지 점검해 먼저 해봐야 할 것 같습니다. 먼저 캐시 플러그인을 비활성화하고, 여전히 문제가 해결되지 않으면 호스팅 회사와 상담해보세요.

2. 모든 캐시 플러그인이 오류를 발생시킬 수 있나요?
아니요. 대부분의 캐시 플러그인은 워드프레스와 호환성이 높아서 문제가 발생할 가능성이 적습니다. 하지만 사용자의 특정 환경에서는 충돌이 발생할 수 있습니다.

3. 캐시 데이터를 삭제하면 어떤 영향이 있나요?
캐시 데이터를 삭제하면 웹사이트의 최신 데이터를 불러오게 됩니다. 따라서 최신 정보로 업데이트되어 방문자들이 더 빠르고 정확한 정보를 확인할 수 있게 됩니다.

4. “지속적인 객체 캐시를 사용해야 합니다” 오류가 자주 발생하면 어떻게 해야 하나요?
만약 해당 오류가 반복적으로 발생한다면 워드프레스 업데이트나 다른 호스팅 서비스를 검토해보는 것이 좋습니다.

5. 왜 캐시가 웹사이트 성능에 중요한 영향을 미치나요?
캐시는 웹사이트의 로딩 속도를 향상시키고 서버 부하를 줄여줍니다. 이는 방문자들이 더 빠르게 웹사이트를 이용하고, 검색 엔진에서 높은 순위를 유지하는 데에 도움이 됩니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다