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

4.3 / 5. تعداد رای: 6

کش 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. U341840 ۱۷ فروردین ۱۴۰۳

    ایا استفاده این افزونه کنار راکت ممکن است و مشکلی ایجاد نمیکند/؟؟؟؟؟؟؟؟؟؟؟؟

  2. U341840 ۱۷ فروردین ۱۴۰۳

    ایا استفاده این افزونه کنار راکت ممکن است و مشکلی ایجاد نمیکند/؟

  3. U338391 ۱۹ بهمن ۱۴۰۲

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

  4. U329067 ۱۰ شهریور ۱۴۰۲

    گزینه enable پیش فرض خاموشه با اینکه هاستم redis support هست

  5. U317638 ۱ اردیبهشت ۱۴۰۲

    سلام من وبسروم apache هست
    کنترل پنل هم دایرکت ادمین هست
    کجا باید از دستورات را وارد کنم

  6. U42273 ۲۷ مهر ۱۴۰۰

    سلام
    سرور فعال کرد
    سرور litespeed و دسترسی به افزونه ردیس رو ندارم
    پس رفتم و از داخل litespeed گزینه ردیس رو فعال و تیک ردیس رو هم زدن
    سرعت سایت افتضاح شد
    هم redis فعال ه وهم memchash

  7. U38798 ۱۷ تیر ۱۴۰۰

    من redis رو که فعال می‌کنم not connected میده!

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

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