ثبت‌نام ورود

کش Redis چیست و چطور در وردپرس از آن استفاده کنیم

کش Redis
کش Redis

کش Redis یا Redis Object Cache یکی از تکنولوژی‌های کش کردن اطلاعات هست که می‌تواند سرعت سایت وردپرس شما را به شدت افزایش دهد. طبق منابع سایت TechStacks کش ردیس، روی سایت‌های معتبر زیادی از جمله گیت هاب، پینترست، اینستاگرام و … استفاده شده است. پس بد نیست اطلاعاتی درباره نحوه کارکرد این سیستم کش داشته باشیم.

Redis (مخفف عبارت Remote Dictionary Server)، یک سیستم کش دیتابیس بر پایه حافظه رم هست که با کش کردن داده‌های دیتابیس سایت شما در رم سیستم، باعث افزایش سرعت سایت وردپرس و خصوصا پنل مدیریت وردپرس شما خواهد شد.

اما بیایید آهسته‌تر جلو برویم. شاید درباره کش اطلاعات زیادی نداشته باشید. اصلا نگران نباشید چون شما یک هم‌میهن وردپرسی هستید. 🙂

اصلا کش یعنی چه

اگر یک صفحه از یک وب‌سایت را کش کنیم، اطلاعات آن صفحه شامل تصاویر، سی اس اس‌ها، اطلاعات موجود در دیتابیس و خلاصه هر چیزی که فکرش را بکنید از یک مکان در دسترس‌تر لود خواهد شد. پس سرعت باز شدن آن صفحه بیشتر خواهد بود.

نحوه کارکرد کش
نحوه کارکرد کش

پس کش باعث می‌شود سرعت لود صفحه بالاتر رود و از طرفی دیگر، منابع استفاده شده سرور بسیار کمتر باشد.

Object Cache چیست

آبجکت کش یک سیستم کش سمت سرور هست، در این سیستم‌ها معمولا کش توسط کاربر نهایی مدیریت نمی‌شود، یعنی اگر شما از یک هاست اشتراکی استفاده می‌کنید و خودتان مدیر سرور نیستید، نمی‌توانید مستقیما Object Cache را مدیریت کنید. بلکه با استفاده از افزونه‌هایی می‌توانید این کار را انجام دهید.

اما کاربری که به عنوان بازدید کننده از سایت شما استفاده می‌کند، نمی‌تواند کش را حتی با خالی کردن کش مرورگر حذف کند. تمام موارد کش از سمت سرور انجام خواهد شد.

Object Cache باعث می‌شود اطلاعات دیتابیس شما در جایی ذخیره شود. (حالا این مکان می‌تواند رم سیستم باشد یا هارد دیسک سیستم) زمانی که اولین بار کاربر سایت شما را باز کرد، اطلاعات در کش ذخیره می‌شود. دفعات بعدی اطلاعات از همان مکان کش خوانده می‌شود و سرعت دریافت اطلاعات بسیار بیشتر خواهد بود.

وردپرس بصورت پیشفرض از کش خودکامه (کمی سخت شد 🙂 ) WP_Object_Cache استفاده می‌کند.

چه زمان‌هایی از Object Cache استفاده می‌کنیم

ما در میهن وردپرس زمانی از آبجکت کش استفاده می‌کنیم که ترافیک زیادی به دلیل ایجاد یک کمپین تبلیغاتی روی سایت بوجود می‌آید. مثلا تخفیف‌های عید نوروز بهانه خوبی برای استفاده از این مدل کش هستند.

MEMCACHED یا REDIS

MEMCACHED یک سیستم کش شبیه به Redis هست. اینکه از کدام یکی استفاده کنیم سوال بسیار بزرگی برای خود من بود. تا همین چند ماه پیش هر چقدر درباره این دو تحقیق و بررسی کردم، به نتیجه‌ای نرسیدم. می‌توان گفت هر دو سیستم بسیار عالی هستند.

MEMCACHED یا REDIS
MEMCACHED یا REDIS

اما چطور Redis Cache را نصب کنیم

اگر خودتان مدیر سرور هستید و سرور سایت خودتان را مدیریت می‌کنید که کار بسیار آسان هست. اما اگر از هاست اشتراکی استفاده می‌کنید، قطعا باید مدیر سرور را قانع کنید. معمولا مدیران شرکت‌های هاستینگ یا از موضوع اطلاع کافی ندارند و یا اصلا دوست ندارند تابع مشتری باشند. (البته در برخی مواقع واقعا حق دارند.) تصمیم به اجرای پیشنهاد شما نمی‌گیرند.

بگذریم. اگر نتوانستید مدیر سرور را قانع کنید، یا خودتان مدیر سرور هستید، با اجرای این دستورات خواهید توانست Redis را روی سرور سایت خود نصب کنید.

yum install epel-release

با دستور بالا epel-release را روی سرور نصب کردیم. حالا ردیس کش را نصب کنیم:

yum install redis

حالا اجرا کنیم:

systemctl start redis

و برای شروع خودکار Redis موقع روشن یا ریستارت کردن سرور، دستور زیر را تایپ کنید:

systemctl enable redis

حالا اگر دستور redis-cli ping را در Terminal وارد کنید، عبارت PONG را می‌بینید که نشان دهنده کارکرد صحیح Redis هست.

در نهایت باید PHP Redis Extention را روی PHP خود نصب کنید. با این‌کار عملیات نصب Redis از سمت سرور شما انجام خواهد شد.

نصب Redis Cache روی وردپرس

برای نصب Redis روی سایت وردپرسی خود، کافیست از افزونه وردپرس Redis Cache استفاده کنید. قطعا آموزش نصب افزونه در وردپرس را هم می‌دانید و نیازی به توضیح در این باره نیست.

افزونه Redis برای وردپرس
افزونه Redis برای وردپرس

بعد از نصب این افزونه، کافیست روی Enable Redis در بخش تنظیمات افزونه کلیک کنید تا ردیس کش روی سایت شما نصب و فعال شود.

موفق و پیروز باشید. 🙂

نظر شما در این‌باره چیست؟

  1. U9779 ۲۵ خرداد ۱۳۹۹

    سلام
    شما از چه سیستم کشی استفاده میکنید؟
    سرعت سایت شما مربوط به بهینه بودن کش است؟ یا کدنویسی بهیه قالبتون؟