در حقیقت این مقاله تجربه های شخصی است که میخواهیم برای شما نیز به اشتراک بگذاریم
تمامی مشکلات سی پی یو و گزارش کامل آن در فایل log موجود در پوشه cpu exceed قرار میگیرد که خود این پوشه درون پوشه tmp در ریسه اصلی می باشد. پس یادتان باشد هر وقت مشکل سی پی یو داشتید ابتدا این فایل را چک کنید. درون این فایل اکثرا علت مصرف بالای سی پی یو را میتوانید پیدا کنید.
این که چه صفحاتی و چه فایل هایی باعث exceed شدن ( تجاوز از حد استاندارد ) می شوند.
»» شش دلیل اصلی مصرف بالای سی پی یو توسط ورد پرس :
دلیل اول مشکلات ناسازگاری افزونه ها که با حذف افزونه مشکل طرف می شود. اگر مشکل سی پی یو دارید افزونه های خود را چک کنیدتا مطمئن شوید مشکل از کدام افزونه است.
دلیل دوم دستکاری درون پوسته ها که با برگرداندن پوسته به حالت پیش فرض مشکل حل می شود. اگر کد ها و حلقه ها به صورت اصولی فراخوانی نشوند یک حلقه بی نهایت پدید می آید که کاملا سی پی رو را میخورد ! پی اگر فردی مبتدی هستید از دستکاری پوسته ها پرهیز کنید.
دلیل سوم وجود ایراد دریکی از جدول های دیتا بیس ( post ) می باشد که وردپرس در هر بار خواندن آن جدول فشار زیادی به سی پی یو می آورد. این مشکل را از داخل PHPMyAdmin توسط repair کردن کلیه جدول ها بر طرف نمایید. در اکثر موارد توسط همین روش مشکل حل می شود و اگر حل نشود تقریبا باید تمامی جدول ها را بررسی نمایید.
دلیل چهارم اشکال در فایل های اصلی وردپرس مانند index.php و … همیشه از آخرین نسخه وردپرس استفاده نمایید و اگر با فایل های اصلی مشکلی داریدبا جایگزین کردن آن فایل مشکل را حل کنید.
دلیل پنجم استفاده از پیوند یکتا در ورد پرس است و شاید تا کنون اصلا به ذهنتان هم خطور نکرده باشد که احتمال دارد پیوند یکتا مشکل ساز شود اما میشود و دلیل آن نیز ایجاد چند خط کد در فایل htaccess. وردپرس است که توسط اکثر هاست ها پشتیبانی نمی شود.
# BEGIN WordPress
RewriteEngine On RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . / index.php [L]
# END WordPress
در خط دوم این کد ماژول IfModule mod_rewrite.c فراخوانی میشود که این ماژول ظاهرا به دلیل داشتن مشکلات زیاد بر روی سرور نصب نمی شود پس htaccess. حاوی فرامینی است که باعث کراش کردن سرور و مصرف سی پی یو میشود.
حال چاره چیست ؟
پاسخ ساده است ، شما باید از پیوند یکتا یا همان permalink پیش فرض وردپرس استفاده کنید و اگر در فایل htaccess. خود این کد ها را دارید آنها را حذف کنید.
اما میرسیم به یک دلیل اصلی که بالاترین مصرف سی پی یو را شامل می شود …
دلیل ششم استفاده نا مناسب از برچسب ها یا همان Tag ها می باشد.
استفاده از برچسب ها به مقدار زیاد وردپرس را تبدیل به یک سی پی یو خور حسابی میکند ! باور نمیکنید ؟ امتحان کنید ! روی لوکال به یک نوشته 50 تا برچسب بزنید و آن را ببینید. آن نوشته خیلی دیر لود می شود و اگر در این هنگام مصرف سی پی یو توسط mysql را در task manager مشاهده کنید خواهید دید که cpu usage تا 50 % بالا می رود.
پس به اندازه کافی به نوشته های خود برچسب بزنید طوری که تعداد آن ها از 15 تجاوز نکند و از درج برچسب های تکراری خود داری کنید.
تمامی این ها تجربه های من در مورد مصرف سی پی یو توسط وردپرس است. اگر شما هم تجربه ای در این زمینه دارید با ما در میان بگذارید تا نسخه دوم این مقاله را هم بنویسیم.