TTFB چیست و چگونه آن را بهینه کنیم؟
سرعت بالای سایت و بارگذاری سریع صفحات مختلف آن برای کاربر از اهمیت بالایی برخوردار است. عوامل مختلفی بر این سرعت تاثیر دارند، در ادامه همین مقاله به توضیح کامل آنها میپردازیم.
اگر زمان TTFB سایت شما بالا باشد قطعا کاربر خسته شده و صفحه شما را ترک خواهد کرد
فهرست محتوا
TTFB چیست؟
بازهی زمانی بین ارسال HTTP Request از مرورگر به سرور و دریافت اولین بایت پاسخ، توسط مرورگر را TTFB میگویند. برای محاسبه این بازه زمانی، زمان لازم برای DNS LOOKUP و سایر تاخیرهای شبکه را هم محاسبه کنید.
Time TO First Byte یا به اختصار TTFB از جمله عوامل تاثیرگذار در ارزیابی عملکرد و بهینه بودن وب سایت است. پایین بودن عدد TTFB نشان دهنده سرعت بالای نمایش سایت و دسترسی سریعتر به منابع آن است.
TTFB از سه قسمت تشکیل شده است.
- مدت زمان مورد نیاز برای ارسال یک درخواست HTTP Request Time
عوامل مختلفی مانند فاصله جغرافیایی بین کاربر و سرور، مدت زمان DNS Lookup، سرعت اینترنت کاربر و وجود فایروالهایی با قوانین پیچیده در مسیر بین کاربر و سرور روی افزایش HTTP Request Time تاثیرگذار است.
2- مدت زمان مورد نیاز برای پردازش درخواست از سمت سرور
3- مدت زمان مورد نیاز برای سرور برای ارسال اولین بایت از پاسخ کلاینت
با سه قسمت تشکیل دهنده TTFB آشنا شدید. حالا در ادامه 5 عامل تاثیرگذار بر افزایش میزان TTFB را بیان خواهیم کرد.
- نوع محتوا (استاتیک یا دینامیک)
- ضعیف بودن منابع سخت افزاری سرور
- مشکلات شبکه (فاصله جغرافیایی زیاد، فایروال با قوانین پیچیده، پهنای باند کم)
- ضعیف بودن طراحی و پیکربندی دیتابیس
- پیکربندی ضعیف وب سرور (عدم بهینهسازی قالب و کدها، عدم استفاده از روش Caching)
Waiting TTFB چیست؟
مدت زمان دریافت پاسخ اولیه از سرور را Waiting TTFB میگویند، که رابطه مستقیمی در افزایش بازدید سایت دارد زیرا گوگل رتبه SERP سایت را براساس میزان TTFB مشخص میکند. اگر زمان TTFB سایت شما بالا باشد قطعا کاربر خسته شده و صفحه شما را ترک خواهد کرد.
تست TTFB
برای تست TTFB از ابزار مختلفی میتوان استفاده کرد. یکی از این ابزارها Google Chrome Dev Tools است.
برای بهرهگیری از این ابزار روش زیر را دنبال کنید:
- مرورگر Chrome را باز کنید.
- کلید ترکیبی Ctrl+Shift+I را بزنید.
اگر از سیستم عامل MacOS استفاده میکنید باید کلید ترکیبی Cmd+Opt+I را بزنید.
- از پنجره ظاهر شده سربرگ Network و در قسمت ALL روی فایل مورد نظر کلیک کنید.
- به قسمت Timing بروید در این قسمت مقدار TTFB قابل مشاهده است.
DNS Lookup چیست؟
وظیفه تبدیل نام دامنه به آدرس IP عملیات مهمی در اینترنت است که برعهده DNS میباشد. برای جستجوی آدرس IPهای مختلف در سرورهای DNS از DNS Lookup استفاده میشود. هرچه تعداد DNS Serverهایی که مورد جستجو قرار میگیرند بیشتر باشد زمان بیشتری طول خواهد کشید تا صفحه به طور کامل برای کاربر بارگذاری شود. این زمان معمولا بین 20 تا 120 میلیثانیه خواهد بود. پس براین اساس میتوان گفت که DNS Lookup در TTFB تاثیرگذار است و هرچه عدد آن کمتر باشد سرعت بارگذاری صفحات سایت برای کاربران بیشتر خواهد بود.
برای آشنایی با ساختار DNS، پیشنهاد میکنیم مقاله DNS چیست؟ آشنایی با کارکرد و نحوه انجام تنظیمات را مطالعه کنید.
Response Time چیست؟
زمانی که طول میکشد تا به درخواست برای سرویسی پاسخ داده شود، را زمان پاسخ یا Response time میگویند.
نوع درخواست کاربر میتواند از انواع مختلفی مانند: درخواست اطلاعات ذخیره شده، دسترسی به اطلاعات مختلف در دیتابیس یا بارگذاری کامل یک صفحه وب باشد. Response time مجموع زمان سرویس و زمان انتظار را شامل میشود. عواملی مانند سرعت اینترنت کاربر و سرور بر Response time تاثیر بالایی دارد.
استفاده از CDN
روش نوین افزایش سرعت سایت استفاده از یک سرویس CDN است، CDN مخفف content delivery network است که به معنای شبکه تحویل محتوا یا شبکه توزیع محتوا میباشد. CDN بار اضافه روی سرور اصلی سایت را کاهش داده و موجب افزایش سرعت تحویل محتوا به کاربران خواهد شد. براساس یک شاخص جهانی، 40 درصد از کاربران اگر بارگذاری وب سایتی بیش از 3 ثانیه طول بکشد آن را ترک خواهند کرد. اما در ایران به دلیل سرعت بسیار پایین اینترنت و حجم بالای وب سایتها این شاخص تا 7 ثانیه تعیین شده است. برای استفاده از سرویس CDN سه مرحله زیر را انجام دهید.
مرحله اول:
یک ارائه دهنده CDN انتخاب کنید و در وب سایت آن ثبت نام کنید. هزینه اشتراک شما به صورت هوشمند و براساس حجم پهنای باند یا اشتراک ماهیانه محاسبه میشود.
مرحله دوم:
برای ادغام CDN با وردپرس از افزونه رایگان CDN Enabler استفاده کنید. این افزونه طی عملیاتی خودکار ادغام دادهها را انجام خواهد داد.
مرحله سوم:
از این به بعد وقتی کاربر وارد سایت شما میشود محتوای وردپرسی شما در CDN هایی در سراسر دنیا لود میشود و نسبت به مکان کاربر نزدیکترین سرور CDN انتخاب شده و اطلاعات برایش بارگذاری میشود. اگر کاربر از ایران وارد وب سایت شما شود دیگر Latency قبلی را برای انتقال از فرانسه به ایران احساس نمیکند زیرا اطلاعات از سروری در آسیا برایش ارسال خواهد شد.