وردپرس یکی از محبوبترین سیستمهای مدیریت محتوا (CMS) در جهان است که میلیونها وبسایت و فروشگاه اینترنتی با آن راهاندازی شدهاند.
این پلتفرم با امکانات گسترده، قالبهای متنوع و افزونههای فراوان، بهترین انتخاب برای وبلاگنویسان، فروشگاههای آنلاین و حتی وبسایتهای سازمانی است.
اما محبوبیت و گستردگی امکانات آن به معنی مصرف بیشتر منابع سرور است.
به همین دلیل بسیاری از متخصصان برای افزایش سرعت سایتهای وردپرسی استفاده از سیستمهای کش مانند Memcached را توصیه میکنند.
کش وردپرس چیست و چرا به آن نیاز داریم؟
وردپرس به صورت پیشفرض سیستم کش داخلی ندارد.
کش به معنی ذخیرهسازی موقت دادهها برای کاهش مصرف منابع و افزایش سرعت دسترسی است.
بدون کش، هر بار که کاربر صفحهای را باز میکند، سرور باید تمام کوئریهای دیتابیس را پردازش کند.
این موضوع به خصوص در سایتهای پرترافیک باعث کاهش سرعت و فشار زیاد روی منابع میشود.
افزونههای متعددی برای کش در وردپرس وجود دارند، اما بیشتر آنها منابع پردازشی زیادی مصرف میکنند.
راهکار بهتر استفاده از سیستمهای کش پویا مانند Memcached است که در لایه زیرساختی عمل میکنند.
Memcached چیست؟
Memcached یک سیستم کش توزیعشده در حافظه است که دادهها و کوئریهای پرمصرف را ذخیره میکند.
این نرمافزار متنباز (Open Source) با سرعت بالا، دادههای مورد نیاز را در RAM ذخیره کرده و هنگام درخواست مجدد همان داده را از حافظه تحویل میدهد.
این فرایند باعث کاهش فشار روی دیتابیس MySQL یا MariaDB میشود که قلب بیشتر وبسایتهای وردپرسی است.
به بیان ساده، اگر دیتابیس سایت شما هزار بار به یک کوئری خاص پاسخ دهد، Memcached آن را یک بار ذخیره کرده و ۹۹۹ بار بعدی همان پاسخ را از حافظه بازمیگرداند.
مزایای استفاده از Memcached در وردپرس
- افزایش سرعت بارگذاری: دادهها از حافظه RAM ارائه میشوند که بسیار سریعتر از پردازش مجدد دیتابیس است.
- کاهش بار روی سرور: فشار روی CPU و پایگاه داده به شدت کاهش مییابد.
- صرفهجویی در هزینه: با بهینهسازی منابع، نیاز کمتری به ارتقای سختافزار یا پلن هاست خواهید داشت.
- بهبود تجربه کاربری: کاربران با صفحات سریعتر و روانتر مواجه میشوند.
- بهبود سئو: سرعت بارگذاری سایت یکی از فاکتورهای مهم گوگل برای رتبهبندی است.
پیشنیازهای نصب Memcached در وردپرس
قبل از شروع مراحل نصب مطمئن شوید که:
- روی هاست یا سرور شما امکان فعالسازی Memcached وجود دارد.
- نسخه PHP شما با افزونه Memcached سازگار است (معمولا PHP 5.6 یا بالاتر).
- دسترسی به کنترل پنل هاست (cPanel یا DirectAdmin) یا دسترسی SSH دارید.
مراحل نصب و پیکربندی Memcached در وردپرس
قدم اول: فعالسازی Memcached در هاست
از طریق کنترل پنل هاست به بخش تنظیمات PHP بروید و گزینه Memcached را فعال کنید.
در بسیاری از هاستهای حرفهای مانند هاستینگ ابری نوین هاست، این قابلیت به صورت پیشفرض وجود دارد.
قدم دوم: راهاندازی سرویس Memcached
در برخی سرورها باید سرویس Memcached را به صورت دستی راهاندازی کنید.
در لینوکس (مانند Ubuntu/Debian) میتوانید از دستورات زیر استفاده کنید:
sudo apt update sudo apt install memcached libmemcached-tools -y sudo systemctl enable memcached sudo systemctl start memcached
قدم سوم: ویرایش فایل wp-config.php
به پوشه وردپرس خود بروید و فایل wp-config.php را باز کنید.
سپس خط زیر را بعد از define('WP_DEBUG', false);
اضافه کنید:
define('WP_CACHE', true);
قدم چهارم: نصب افزونه WP-FFPC
از بخش «افزونهها ← افزودن افزونه» در وردپرس، افزونه WP-FFPC را نصب کنید.
این افزونه از حافظه سیستم (Memcached یا APCu) برای کش کردن مطالب استفاده میکند.
قدم پنجم: پیکربندی WP-FFPC
پس از نصب، افزونه را فعال کنید و به بخش تنظیمات آن بروید.
آدرس سوکت Memcached را در قسمت Hosts وارد کنید.
این آدرس معمولا به صورت زیر است و میتوانید از پنل هاست آن را پیدا کنید:
unix:///home/sys/memcached.sock
قدم ششم: ذخیره تنظیمات
روی گزینه Save کلیک کنید تا تغییرات ذخیره شوند.
از این لحظه Memcached در وردپرس فعال است و دادههای سایت شما در حافظه کش ذخیره خواهند شد.
قدم هفتم: تست فعال بودن Memcached
برای تست میتوانید از یک اسکریپت PHP ساده استفاده کنید:
اگر بار اول عبارت expensive query را مشاهده کردید و در بارهای بعدی cached نمایش داده شد،
یعنی به درستی کار میکند.
بهترین شیوههای استفاده از Memcached در وردپرس
- بهروزرسانی منظم وردپرس و افزونهها برای سازگاری با Memcached.
- ترکیب با افزونههای کش صفحه (Page Cache) برای افزایش سرعت بیشتر.
- مانیتورینگ عملکرد سرور برای جلوگیری از اشباع RAM.
- استفاده از ابزارهای مدیریت کش برای پاکسازی منظم دادههای قدیمی.
تفاوت Memcached و Varnish
هر دو ابزار برای افزایش سرعت سایت استفاده میشوند، اما تفاوتهای مهمی دارند:
- Memcached: دادههای سطح دیتابیس و کوئریها را کش میکند.
- Varnish: صفحات HTML آماده را کش میکند و سریعتر از سرور وب به کاربران تحویل میدهد.
به همین دلیل ترکیب این دو ابزار میتواند بهترین عملکرد را برای سایتهای پرترافیک ایجاد کند.
نوین هاست یار نوین شماست
نوین هاست با ارائه هاستینگ ابری و پشتیبانی کامل از Memcached به صورت Native،به شما امکان میدهد بدون نیاز به دانش عمیق فنی، کش سرور را تنها با چند کلیک فعال کنید.با استفاده از سرویسهای نوین هاست، سرعت وبسایت وردپرسی شما افزایش چشمگیری خواهد داشت مصرف منابع کاهش مییابد و کاربران تجربه کاربری بینقصی خواهند داشت.