بلاگ/راه‌اندازی کش Redis برای وردپرس روی هاست آریانت
به‌روز شده

راه‌اندازی کش Redis برای وردپرس روی هاست آریانت

1405/08/190 بازدید
راه‌اندازی کش Redis برای وردپرس روی هاست آریانت

صفحه خرید و قیمت: هاست وردپرس

راه‌اندازی کش Redis برای وردپرس روی هاست آریانت

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

در این راهنما کش Redis را روی هاست آریانت قدم‌به‌قدم راه می‌اندازیم.

Redis دقیقا چه چیزی را کش می‌کند؟

وردپرس دو نوع کش رایج دارد که اغلب با هم اشتباه گرفته می‌شوند:

نوع کشچه چیزی را نگه می‌داردمثال
کش صفحهخروجی HTML کامل صفحهافزونه‌های کش صفحه
کش آبجکتنتیجه کوئری‌های دیتابیس و داده‌های داخلیRedis با افزونه Redis Object Cache

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

قدم اول: فعال کردن افزونه کش Redis در پنل

در پنل آریانت، صفحه هاست خود را باز کنید و به تب «کش Redis» بروید. سه حجم در دسترس است:

حجممناسب برایهزینه
۶۴ مگابایتوبلاگ و سایت شرکتی۱۰ درصد قیمت پلن هاست
۱۲۸ مگابایتسایت‌های پربازدیدتر و فروشگاه‌های کوچک۱۵ درصد قیمت پلن هاست
۲۵۶ مگابایتووکامرس با محصولات زیاد۲۰ درصد قیمت پلن هاست

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

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

برای نکته‌های دیگر بهینه‌سازی هاست وردپرس، این مطلب را هم بخوانید.

Redis شما خصوصی است

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

قدم دوم: تنظیم wp-config.php

بعد از فعال شدن، تب «کش Redis» یک قطعه آماده برای وردپرس نشان می‌دهد که مسیر socket و رمز Redis شما داخلش است. ساختارش این شکلی است:

define( 'WP_REDIS_SCHEME', 'unix' );
define( 'WP_REDIS_PATH', '/مسیر/سوکت/از/پنل' );
define( 'WP_REDIS_PASSWORD', 'رمز-از-پنل' );
define( 'WP_REDIS_PREFIX', 'mysite_' );

مقدارهای واقعی را از پنل کپی کنید و این خطوط را در فایل wp-config.php، قبل از خط /* That's all, stop editing! */ بگذارید. برای ویرایش فایل می‌توانید از فایل منیجر cPanel یا ترمینال تحت وب پنل استفاده کنید.

اگر چند سایت وردپرسی روی یک حساب دارید، برای هر کدام WP_REDIS_PREFIX متفاوتی بگذارید تا کلیدهای کش با هم قاطی نشوند.

قدم سوم: نصب افزونه Redis Object Cache

  1. در پیشخوان وردپرس به «افزونه‌ها > افزودن» بروید.
  2. «Redis Object Cache» را جست‌وجو و نصب کنید.
  3. افزونه را فعال کنید و از «تنظیمات > Redis» روی Enable Object Cache بزنید.

وضعیت باید «Connected» نشان داده شود. اگر خطای اتصال دیدید، معمولا یکی از مقدارهای wp-config.php درست کپی نشده؛ دوباره از پنل کپی کنید.

قدم چهارم: نتیجه را چک کنید

چند روش ساده برای دیدن اثر کش:

  • تعداد کلیدها در پنل: بعد از چند بار باز کردن صفحه‌های سایت، تعداد کلیدها در تب «کش Redis» بالا می‌رود. یعنی وردپرس دارد در Redis می‌نویسد.
  • نمودار حافظه: نمودار زنده نشان می‌دهد چقدر از حجم استفاده شده.
  • سرعت پیشخوان: صفحه‌هایی مثل فهرست نوشته‌ها و سفارش‌های ووکامرس را قبل و بعد از فعال کردن کش باز کنید و زمان بارگذاری را مقایسه کنید.
  • افزونه Query Monitor: تعداد کوئری‌های دیتابیس هر صفحه را نشان می‌دهد؛ بعد از فعال شدن کش این عدد کمتر می‌شود.

اتصال وردپرس به کش Redis برای سریع‌تر شدن سایت

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

نگهداری روزمره

تب «کش Redis» چند ابزار برای مدیریت دارد:

  • خالی کردن کش (Flush): بعد از تغییرات بزرگ مثل عوض کردن قالب یا ایمپورت محصولات، کش را خالی کنید تا داده تازه ساخته شود.
  • ری‌استارت: اگر سایت رفتار عجیبی داشت، یک ری‌استارت Redis را از همان‌جا انجام دهید.
  • عوض کردن رمز: رمز را هر وقت خواستید عوض کنید و مقدار جدید را در wp-config.php بگذارید.

Redis اینجا فقط نقش کش دارد. وقتی حافظه پر شود، کلیدهایی که کمتر استفاده شده‌اند خودکار جای خود را به داده تازه می‌دهند و داده اصلی سایت همیشه در دیتابیس MySQL می‌ماند.

برنامه‌های PHP غیر وردپرسی

اگر سایت شما با لاراول یا PHP خالص نوشته شده، در همان تب یک نمونه اتصال برای phpredis هم هست. اگر پروژه‌تان روی سرور مجازی اجرا می‌شود نه هاست اشتراکی، این راهنما نصب و تنظیم Redis را روی سرور مجازی هم توضیح می‌دهد:

$redis = new Redis();
$redis->connect('/مسیر/سوکت/از/پنل');
$redis->auth('رمز-از-پنل');
$redis->set('greeting', 'سلام');

جمع‌بندی

کش Redis وردپرس با سه کار راه می‌افتد: فعال کردن افزونه «کش Redis» در پنل، گذاشتن چند خط در wp-config.php و نصب افزونه Redis Object Cache. بیشترین اثرش را در پیشخوان وردپرس، صفحه‌های کاربران لاگین‌کرده و فروشگاه‌های ووکامرس می‌بینید. اگر هنوز هاست ندارید، پلن‌ها را در صفحه هاست وردپرس آریانت مقایسه کنید.

سؤالات متداول

کش Redis جای افزونه کش صفحه را می‌گیرد؟ نه، کنار هم کار می‌کنند. کش صفحه خروجی HTML را نگه می‌دارد و Redis کوئری‌های دیتابیس را. ترکیب این دو بهترین نتیجه را می‌دهد.

چه حجمی انتخاب کنم؟ برای وبلاگ و سایت شرکتی ۶۴ مگابایت کافی است. برای ووکامرس با صدها محصول از ۱۲۸ یا ۲۵۶ مگابایت شروع کنید و نمودار حافظه را دنبال کنید.

اگر Redis ری‌استارت شود داده‌ای از دست می‌رود؟ نه. Redis فقط کش است و داده اصلی در MySQL است. بعد از ری‌استارت، کش در چند بازدید اول دوباره ساخته می‌شود.

می‌توانم حجم را بعدا کم یا زیاد کنم؟ بله، از تب «کش Redis» هر وقت خواستید حجم را عوض کنید. ارتقا به نسبت روزهای باقی‌مانده دوره حساب می‌شود.