وردپرس قدرتمندترین پلتفرم برای وبلاگ نویسان حرفهای و وبسایتهای ثابت است. اگر برای مدتی از وردپرس در هاست اشتراکی یا سرور خصوصی مجازی استفاده کرده باشید، احتمالا با خطاهای مربوط مصرف CPU مواجه شده اید.
چگونه می توان استفاده از CPU وردپرس خود را بدون ارتقا منابع سرور کاهش داد؟ استفاده بیش از حد از CPU میتواند باعث کرش کردن سرور و از دسترس خارج شدن سایت شما شود و حتی ممکن است بر رتبه گوگل شما تأثیر بگذارد، فرقی نمیکند که ترافیک شما بالا باشد یا عادی، ممکن است دلایل دیگری وجود داشته باشد که سایت شما باعث مصرف CPU در سرور شود.
برای جلوگیری از این مورد نیاز است تا موارد زیر را در نظر داشته باشید:
1-افزونهها
اولویت اول حذف افزونههای غیرضروری از وبسایت وردپرس است. گاهی اوقات پلاگینهای نصب شده میتوانند باعث استفاده از CPU شوند. برخی پیشنهاد میکنند که حداکثر از 3 یا 4 افزونه استفاده کنید اما در مواردی استفاده از پلاگین های محدود امکانپذیر نیست. واقعاً سخت است که بفهمید کدام افزونه از CPU استفاده می کند اما می توانید اطلاعاتی را از لاگها دریافت کنید. در صورت نیاز میتوانید گزارشها را از طریق WHM/Server Status/Daily Process Log مشاهده نمایید.
در سناریو بالا، ما باید روی تصحیح و بهینهسازی پلاگینها و جلوه های بصری سایت تمرکز کنیم و لود صفحه اصلی وبلاگ را بهینه کنیم. همچنین باید روی مواردی مانند نمایش صفحات ضروری تمرکز نمایید و از پاپ آپهای چشم نواز و افزونههای پستهای مرتبط و… اجتناب کنید.
سعی کنید از افزونههایی مانند “Yet Another Related Posts Plugin (YARPP)” که مشکلات زیادی در کد آنها وجود دارد اجتناب کنید.
نکته: شما باید با حذف افزونههای اضافی، فایلهای وردپرس و سایت خود را تمیز کنید.
2-استفاده از افزونه کش
درحال حاضر دو افزونه کش کارآمد در بازار وجود دارد. در این میان، برخی از افراد W3 Total Cache یا WP Super Cache را پیشنهاد میکنند. پیشنهاد ما نصب افزونه WP Total Cache است که رایگان است و دارای برخی ویژگیهای پیشرفته می باشد.
3-سرویس CloudFlare
CloudFlare یک سرویس رایگان CDN است که بسیار پرکارآمد است و به وبسایتهای شما کمک میکند تا به خوبی لود شوند و مقداری لود CPU را مدیریت کنند. همچنین از طریق مخفی کردن آدرس IP سرور واقعی شما از حملات DDos به وبسایت شما جلوگیری میکند. قطعا به همه پیشنهاد میشود از CloudFlare استفاده نمایند و از حملات DDos برروی سایت خود جلوگیری کنند.
برای ایجاد اکانت و اضافه کردن دامنه خود به این سرویس می توانید از مقاله زیر استفاده نمایید:
نحوه ایجاد حساب در Cloudflare و اضافه کردن وب سایت
4-بهینهسازی Cron Jobs (wp-cron.php)
کرون جابز به طور ویژه به گرفتن پینگ و درخواستهای صفحات از سرور اختصاص داده میشود. پس از نصب وردپرس به صورت پیشفرض، Con Jobs سرور را با بازه زمانی مشخص پینگ می کند که باعث ایجاد لود و درخواست اضافی روی سرور می شود. خوشبختانه این مورد به هیچ وجه یک اقدام ضروری نیست. بنابراین می توانید فاصله زمانی پینگ را تا حد بالاتر تنظیم کنید.
اگر در هر ساعت 50 بازدیدکننده به سایت خود میرسید و هر یک از آنها 2-3 صفحه را میخواندند، wp-cron.php به این تعداد فراخوانی میشود.
50 x 2.5 = 125 بار در ساعت
125 x 24 = 3000 بار در روز
3000 x 30 = 90000 بار در ماه
افزونههای واردکننده خودکار RSS Feed نیز بار زیادی بر عملکرد سرور و حافظه وارد میکند.
چگونه wp-cron.php را بهینه کنیم؟
ابتدا باید از اجرای wp-cron.php در هر صفحه جلوگیری کنید. این کار را با باز کردن فایل wp-config.php (در پوشه ای که وردپرس در آن نصب شده است) انجام دهید و خط زیر را نزدیک به بالای فایل اضافه کنید.
define(‘DISABLE_WP_CRON’, true);
کاری که انجام می دهد این است که به موتور وردپرس می گوید که اسکریپت wp-cron.php را در هر صفحه سایت اجرا نکند و اساساً آن را غیرفعال می کند. در مرحله بعدی، شما باید راهی برای اجرای منظم فایل wp-cron.php ایجاد کنید. اکنون نیاز است تا راهی برای اجرا معمولی wp-cron.php ایجاد کنید. یک cron job در cPanel ایجاد کنید که هر ساعت اجرا شود و این دستور را اجرا کند.
wget -O /dev/null http://www.example.com/wp-cron.php?doing_wp_cron
5-استفاده از تمهای سبک
تم های سبک و ساده نیز بر میزان استفاده و لود CPU تأثیر میگذارد. تعداد زیادی تم برای ویژگیهای داخلی مانند صفحه کشویی، تبلیغات و اعلانها، پستهای مرتبط و… برای افزودن به سایت وجود دارد و تعداد ویژگیهایی که استفاده می کنید باعث بالا رفتن زمان بارگذاری سرور میشود.
یک قالب معروف به نام Genesis نیز وجود دارد که در هزاران وبلاگ معتبر در حال اجرا است.چه یک توسعهدهنده مبتدی یا پیشرفته باشید، Genesis پایهای ایمن و بهینهسازی شده برای موتورهای جستجو را فراهم میکند که میتواند کمک زیادی در مدیریت سایت شما باشد.
6-بهینهسازی پایگاهداده وردپرس
پایگاهداده(Database) روح هر وبسایت و وبلاگ است. پایگاهداده در واقع یک بخش از MySQL است و شامل تمام دادههای سایت شما مانند مرتب سازی آدرس URL پستها و اطلاعات متا و غیره است. یک جدول پایگاهداده با بهینهسازی ضعیف میتواند به طور آزاردهندهای وبلاگ شما را مختل کند و از فضای غیرضروری برای ذخیره دادههای ناخواسته استفاده می کند که باعث تاخیر وبلاگ شما میشود.
7-فشرده سازی/ادغام تصاویر موجود در پست ها
ضربالمثلی وجود دارد که میگوید “یک تصویر میتواند هزاران کلمه را بیان کند”. وقتی صحبت از وبلاگنویسی می شود، تصاویر مهمترین عامل برای جلب توجه خوانندگان هستند. از سوی دیگر، میتوان از آن برای به دست آوردن ترافیک ورودی موتور جستجو نیز استفاده کرد.
اما درج بیش از حد تصویر نه تنها وبلاگ شما را کندتر میکند، بلکه برای خوانندگان شما نیز آزاردهنده میشود. تا جایی که ممکن است حداکثر تصاویر اضافه شده را در وبلاگ خود کاهش دهید. از طرف دیگر، میتوانید تمام تصاویر خود را در یک زیر دامنه میزبانی کنید که بر سرعت صفحه اصلی شما تأثیری نخواهد گذاشت، بنابراین سرور سریعتر پاسخ میدهد.
ابزارهای بهینهسازی تصویر زیادی برای افزودن به سی پنل وجود دارد و میتوانید به هر یک از این ابزارهای رایگان وابسته باشید یا از برنامههای شخص ثالث استفاده کنید. همچنین اگر مقالات طولانی ارسال میکنید که دارای ده ها تصویر است، می توانید پست را به 2 یا 3 صفحه با توجه به طول مقاله تقسیم کنید. اگر صدها نظر در هر پست دریافت میکنید، میتوانید از این روش در بخش نظرات نیز استفاده نمایید.
8-بهروزرسانی توابع
بسیاری از افزونهها نسخههای جدیدتر خود را در بازه زمانی مشخصی منتشر میکنند. برخی از تمها نیز قابل بهروزرسانی هستند. در اینجا، اگر این توابع را به درستی بهروزرسانی نکنید، هر زمان که وبلاگ خود را لود کنید، بهطور خودکار درخواستهای بهروزرسانی در وبلاگ شما زیاد میشود. بنابراین هر افزونه و تم (از جمله وردپرس) را در سریعترین زمان ممکن بهروز کنید.
به طور خلاصه، همیشه همه چیز را بهروز کنید. اگر بهروز رسانی در دسترس است، همیشه باید آن را انجام دهید زیرا بهروز رسانیها شامل بهبودهای امنیتی و رفع اشکال هستند.
امیدوارم از این مقاله استفاده لازم را برده باشید. با مقالات server.ir همراه باشید…