افزایش سرعت وردپرس؛ نقشهٔ راه عیبیابی و بهینهسازی
از تشخیص کندی سرور تا تصاویر، فونت و کش؛ یک مسیر مرحلهبهمرحله برای افزایش سرعت وردپرس، همراه با چکلیست آزمون قبل و بعد.
پاسخ کوتاه
برای سریعتر شدن وردپرس، ابتدا صفحه و وضعیت کاربری کند را پیدا کنید. سپس فقط همان گلوگاه را تغییر دهید و نتیجه را در شرایط یکسان بسنجید. نصب چند افزونهٔ بهینهسازی همزمان، جای تشخیص مسئله را نمیگیرد.
قبل از نصب افزونه، خط مبنا بسازید
یک صفحهٔ اصلی، یک مقاله و یک صفحهٔ مهم مثل محصول یا ثبتنام را انتخاب کنید. هر صفحه را هم در حالت مهمان و هم، اگر کاربرد دارد، پس از ورود بررسی کنید. آدرس، زمان آزمون، دستگاه، وضعیت کش و نتیجه را در یک یادداشت ثابت بنویسید. وقتی شرایط آزمون تغییر کند، مقایسهٔ اعداد میتواند گمراهکننده باشد.
در یک سناریوی فرضی، مقالهها سریعاند اما صفحهٔ ثبتنام کند است. در این وضعیت، فعالکردن کش بیشتر روی مقالهها مسئلهٔ اصلی را حل نمیکند. باید مسیر ثبتنام، درخواستهای خارجی و کارهای سرور در همان صفحه را بررسی کرد. این مثال یک روش تشخیص است و نتیجهٔ اندازهگیری محصول خاصی نیست.
ابتدا از سایت و پایگاه داده نسخهٔ پشتیبان قابل بازیابی بگیرید. بهینهسازی آزمایشی را روی نسخهٔ آزمایشی انجام دهید و یک تغییر را در هر مرحله اعمال کنید. اگر خطایی رخ داد، باید بتوانید عامل آن را مشخص و همان تغییر را برگردانید.
کندی از سرور است یا از مرورگر؟
در ابزار Network مرورگر، درخواست سند اصلی را پیدا کنید. اگر قبل از رسیدن HTML انتظار طولانی دیده میشود، میزبانی، اجرای PHP، کوئریهای پایگاه داده یا ارتباط با سرویس خارجی را بررسی کنید. اگر HTML زود میرسد ولی محتوای اصلی دیر دیده میشود، مسیر تصاویر، فونتها، CSS و JavaScript مهمتر است.
برای صفحات عمومی، کش صفحه میتواند اجرای تکراری بخشی از کار سرور را کاهش دهد. برای پنل کاربر، پرداخت یا محتوای شخصی، کش مشترک بدون استثنا خطرناک است. پیش از هر تنظیم سرعت، فهرست صفحههای شخصی و وضعیتهای ورود را مشخص کنید.
به یک بار بارگذاری اتکا نکنید. یک درخواست سرد و چند درخواست گرم را جدا ثبت کنید. نتیجهٔ گرم ممکن است بسیار بهتر باشد؛ اگر همهٔ اندازهگیریها را با هم مخلوط کنید، تصویری از رفتار کاربر تازهوارد نخواهید داشت.
تصاویر و فونتها را هدفمند سبک کنید
در صفحهای که تصویر بزرگ بالای آن دیده میشود، همان تصویر را در اولویت قرار دهید. اندازهٔ واقعی نمایش را بررسی کنید؛ ارسال تصویری چند برابر عرض مورد نیاز، لزوماً کیفیت قابل مشاهدهٔ بیشتری نمیدهد. نسخههای مناسب برای عرضهای مختلف و قالب مناسب تصویر را در نظر بگیرید.
برای تصویر اصلی که در اولین نما دیده میشود، بارگذاری تنبل انتخاب پیشفرض مناسبی نیست. در مقابل، تصاویر پایین صفحه میتوانند دیرتر بارگذاری شوند. برای تصاویر و ویدئوها فضا رزرو کنید تا ورود آنها متن و دکمهها را جابهجا نکند.
در سایت فارسی، تعداد وزنهای فونت را محدود کنید. یک وزن متن و یک وزن تیتر اغلب نقطهٔ شروع مناسبی برای بررسیاند. بعد از تغییر فونت، اعداد فارسی، نیمفاصله و نمایش متن انگلیسی داخل جمله را روی موبایل بررسی کنید.
اسکریپتها را با سناریوی واقعی بررسی کنید
فهرست ابزارهای چت، آمارگیر، اسلایدر و فرمساز را تهیه کنید و برای هرکدام بپرسید آیا در همهٔ صفحات لازم است. حذف بار اضافی از صفحهای که به آن ابزار نیاز ندارد، معمولاً تصمیم قابل فهمتری از فعالکردن گزینههای مبهم برای همهٔ فایلهاست.
تأخیر یا ترکیب JavaScript ممکن است روی ترتیب اجرای کد اثر بگذارد. پس از هر تغییر، منوی موبایل، اعتبارسنجی فرم، افزودن به سبد و بازگشت از پرداخت را امتحان کنید. صفحهای که سریع دیده میشود اما دکمهٔ آن کار نمیکند، بهینه نشده است.
برای یک آموزشگاه، بازشدن فهرست درسها و ثبت پاسخ آزمون را هم به فهرست آزمون اضافه کنید. نتیجهٔ صفحهٔ اصلی، تضمینکنندهٔ سرعت تجربهٔ دانشجو نیست.
چه وقت سراغ افزونهٔ کش برویم؟
وقتی مسئله به تولید تکراری صفحات عمومی مربوط است، یک راهکار کش سازگار با وبسرور انتخاب کنید. بررسی کنید چه کسی پاکسازی کش را مدیریت میکند، تغییر محتوا چه زمانی دیده میشود و چه URLهایی مستثنا هستند. دو افزونهای که هر دو مسئول کش HTML هستند ممکن است نگهداری و عیبیابی را پیچیده کنند.
HyperCache یکی از گزینههای موجود در کاتالوگ NexoraPlug است. پیش از انتخاب، امکانات و پیشنیازهای همان صفحهٔ محصول را با نیاز واقعی پروژه مقایسه کنید. این راهنما وعدهٔ نمره یا زمان پاسخ مشخص برای همهٔ سایتها نمیدهد.
پس از انتشار تغییر، دوباره صفحات نمونه را بررسی کنید و یک مسیر بازگشت نگه دارید. هدف شما باید کاهش زمان انجام کار کاربر و حفظ صحت سایت باشد؛ امتیاز آزمایشگاهی فقط یکی از ابزارهای کمک به این تصمیم است.
چکلیست اجرای این راهنما
برای مرور کارها علامت بزنید. انتخابها فقط تا زمان بازبودن همین صفحه باقی میمانند.
پرسشهای رایج
آیا هرچه افزونهٔ کش بیشتر باشد سایت سریعتر میشود؟
خیر. همپوشانی مسئولیتها میتواند پاکسازی و عیبیابی را دشوار کند. ابتدا مشخص کنید هر لایه دقیقاً چه چیزی را کش میکند.
آیا نمرهٔ ۱۰۰ سرعت را تضمین میکند؟
خیر. یک آزمون آزمایشگاهی در یک شرایط مشخص است. دستگاه، شبکه و رفتار کاربران واقعی متفاوتاند.
منابع و مطالعهٔ بیشتر
مبنای فنی این راهنما، مستندات رسمی زیر است. سناریوهای اجرایی مقاله نمونهٔ پیشنهادیاند؛ نتایج هر سایت باید جداگانه اندازهگیری شوند.