خطای TTFB چیست ؟
خطای TTFB و تاثیر آن در سرعت سایت
به طور کلی هنگامی که درباره سرعت سایت وردپرسی صحبت می کنیم، اکثر مواقع بر عملکرد front-end و بهینه سازی سرعت بارگذاری صفحه متمرکز می شویم. با این حال، گاهی بهتر است از سمت سرور که وبسایت شما در اصل از آنجا بارگذاری می شود، به این موضوع نگاه کنیم. امروز به تاثیر TTFB بر وبسایت شما و بحث درباره راه های راحتی به منظور کاهش آن می پردازیم. TTFB معمولا به عنوان یک از عوامل بهینه سازی نادیده گرفته می شود، اما در هنگام آزمایش سرعت سایت باید در نظر گرفته شود. خطای TTFB
TTFB مخفف time to first byte است. به بیان ساده، اندازه گیری مدت زمانی است که مرورگر باید قبل از دریافت اولین بایت داده از سرور منتظر بماند. هرچه این مدت زمان دریافت داده بیشتر باشد، مدت زمان بیشتری طول میکشد تا صفحه برای بازدیدکننده نمایش داده شود. یکی از تصورات رایج غلط این است که TTFB پس از جستجوی DNS محاسبه میشود، با این حال، محاسبه TTFB در شبکه همیشه شامل network latency میباشد. 3 مرحله Process و Delay و Latency ممکن است در هرجایی در این بین رخ دهند و به مجموع کلی TTFB شما اضافه کنند.
درخواست به سرور
هنگامی که کسی از وبسایت شما بازدید میکند، اولین چیزی که اتفاق میافتد، ارسال درخواست HTTP از کاربر به سرور است. در این مرحله، عوامل گوناگونی وجود دارند که در delay تاثیر دارند. زمان کند DNS lookup میتواند باعث افزایش زمان درخواست شود. اگر سرور از نظر جغرافیایی دور باشد، فاصله ای که داده باید بپیماید در latency موثر است. همچنین، اگر قوانین firewall پیچیده ای دارید، ممکن است زمان routing را افزایش دهد. و علاوه بر این موارد، سرعت اینترنت کاربر را فراموش نکنید.
پردازش سرور
پس از اینکه درخواست ارسال شد، سرور باید آن را پردازش کند و پاسخی تولید کند. این امر میتواند تعداد گوناگونی delay مانند فراخوانی آهسته پایگاه داده، اسکریپت های واسطه بیش از حد، ذخیره(cache) نشدن اولین پاسخ، کد یا قالبی که به طور مناسبی بهینه سازی نشده و منابع ناکافی سرور مانند disk I/O یا حافظه ایجاد کند.
پاسخ به کاربر
بعد از اینکه درخواست توسط سرور پردازش شد، باید آن را به کاربر ارسال کند. این مرحله هم از سرعت شبکه سرور و هم از سرعت اینترنت کاربر تاثیر میگیرد. اگر سرعت اینترنت کاربر پایین باشد، بر TTFB تاثیر میگذارد.
خطای TTFB
آیا خطای TTFB مهم است؟
بسیار مهم است که بدانید TTFB و سرعت وبسایت یکسان نیستند. بحثهای زیادی در حوزه وب وجود دارند که آیا TTFB مهم است یا نه. بعضی میگویند TTFB بی معنی است و بعضی دیگر میگویند اهمیت دارد. هر دو گروه دلایلی برای گفته خود میآورند و سوالاتی درباره نحوه محاسبه آن میپرسند.
حتی وبسایت Moz مطالعه گسترده ای درباره ارتباط بین رتبه بندی جستجو و TTFB انجام داد. با این حال، دانستن علت این موضوع یا اینکه سایت های با TTFB پایین تر سریعتر هستند، می تواند به نوبه خود توسط عوامل رتبه بندی صفحات گوگل تحت تاثیر قرار گیرد.
اما به جای صرف زمان روی اهمیت داشتن یا نداشتن آن در سئو، میتوانید برای بهبود این معیار مهم تمرکز کنید. هرکاری که انجام میدهید میتواند بر سرعت کلی سایت شما از هر نوع CMS که باشید (وردپرس، جوملا و …) شما تاثیر داشته باشد و این موضوع بر TTFB شما هم شاید تاثیر بگذارد. در آزمایش های انجام شده با TTFB زیاد، سرعت بارگذاری بسیار آهسته بود.
در کل، اگر سرعت بارگذاری زیر 100 میلی ثانیه باشد TTFB مناسب است. Google PageSpeed Insights برای هر پاسخی زمان کمتر از 200 میلی ثانیه را توصیه میکند. اگر در بازه 300 تا 500 میلی ثانیه هستید، تقریبا استاندارد است. و اگر بیش از 600 میلی ثانیه باشید، ممکن است در پیکر بندی سرور مشکلی وجود داشته باشد یا زمان آن فرا رسیده که به نرم افزار وب بهتری ارتقا پیدا کنید. یا اینکه میتوانید دستور العمل های گفته شده در ادامه را دنبال کنید تا TTFB را کاهش دهید و به یاد داشته باشید که SSL/TLS نیز میتواند یکی از عوامل کندی هم باشد.
خطای TTFB
چگونه TTFB را بسنجیم
روشهای گوناگون زیادی وجود دارند که میتوانید از طریق آنها TTFB را امتحان کنید. در ادامه با تعدادی از آن ها آشنا خواهیم شد. اما به یاد داشته باشید، هر ابزاری نتایجی کمی متفاوت از دیگری میدهد، پس بسیار مهم است که تنها از یکی از آنها استفاده کنید و از آن به عنوان اساس سایر فعالیتها بهره ببرید.
اندازه گیری TTFB با DevTools گوگل کروم
می توان TTFB را در گوگل کروم با استفاده از DevTools اندازه گیری کرد. به یاد داشته باشید، اگر در اندازه گیری TTFB از کامپیوتر خود استفاده میکنید، TTFB تحت تاثیر latency شبکه و ارتباط اینترنت قرار میگیرد. پس بهتر است از ابزارهای واسطه استفاده کنید تا آزمایش را از data center انجام دهد.
در قسمت منوی کروم More Tools را انتخاب کنید و پس از آن Developer Tools را از فهرست کروم انتخاب کنید.
روی عنصری از صفحه کلیک راست کنید و inspect را انتخاب کنید.
از کلید های میانبر Ctrl+Shift+l(ویندوز) یا Cmd+Opt+l(مک) استفاده کنید
می توانید پنجره network را انتخاب کنید و عملکرد سایت خود را ببینید.
خطای TTFB
اندازه گیری TTFB با WebPageTest
همچنین می توانید TTFB را با WebPageTest بسنجید. Great time زمان مورد نیاز برای DNS، socket و SSL negotiations + 100 میلی ثانیه می باشد. به ازای هر 100 میلی ثانیه یک حرف A کسر می شود. همانطور که در آزمایش زیر می توانید ببینید، TTFB این سایت در 0.256 ثانیه یا 256 میلی ثانیه محاسبه شده است.
اندازه گیری TTFB با Pingdom
کروم و WebPageTest به عنوان TTFB به Pingdom رجوع می کنند. با این حال، اگر شما از Pingdom استفاده می کنید، در واقع به عنوان زمان Wait به TTFB مراجعه می کند. می توانید از راهنما استفاده از Pingdom برای آشنایی بیشتر استفاده کنید.
خطای TTFB
اندازه گیری TTFB با GTmetrix
یکی از ابزارهای معروف برای مدیران ایرانی که بیشترین استفاده را از آن میکنند، سایت Gtmetrix هم میتواند ابزاری بسیار مناسب جهت محاسبه TTFB سایت شما باشد، شما میتوانید با استفاده از لوکیشن های مختلف سایت خود را بررسی نمایید.
اندازه گیری TTFB با performance.sucuri
تفاوت اصلی ابزار performance.sucuri با سایر ابزارها این است به یک تست میتواند از ۱۰ ها مکان مختلف در سراسر دنیا سایت شما را تست نمایید و زمان TTFB هر مکان با میانگین کلی را ارائه دهد، یکی از ضعفهای این ابزار کش کردن و یا بهتر است بگیم توان مدیریت برای تست دوباره وجود نداره و اگر همان سایت رو تست دوباره بگیریم نتایج قبلی رو نشون میده.
همچنین ابزار های مختلف دیگری نیز برای اندازه گیری TTFB وجود دارند، مانند tools.keycdn.com و ByteCheck. حتی Google Analytics نیز بخشی برای مشاهده میانگین response time دارد.
خطای TTFB
روش های کاهش TTFB در سایت
استفاده از CDN مناسب
راه دیگری برای کاهش TTFB استفاده از Content Delivery Network یا همان CDN است. CDN را میتوان به شبکه توزیع محتوا ترجمه کرد و ما بارها درباره اهمیت و تاثیرات مثبت و منفی CDN ها صحبت کردهایم. اگر وبسایتی دارید که میزبان کاربرانی از نقاط مختلف کشور یا جهان است، استفاده از CDN می تواند به شدت TTFB شما را کاهش دهد، البته در برخی مکانها این موضوع صدق نمیکند مثلا ایران، توصیه میکنیم مقالات دلایل استفاده از CDN و همچنین رفع خطای CDN در GTmetrix را بخوانید.
بهره گیری از هاست پرسرعت با کانفیگ بهینه
اولین راه برای بهبود زمان TTFB استفاده از یک هاست مناسب با تنظیمات بهینه است، چرا که جدا تاثیر آن بر روی افزایش سرعت سایت روی تجربه کاربری نیز بسیار تاثیری مستقیم و حیاطی دارد. اصولا کمتر هاست اشتراکی دارای TTFB مناسب است و اکثرا به شکل بهینه کانفیگ نشدهاند، البته مخاطب حرفهای بنده هاستینگهای ایرانی است چرا که ما از اکثر هاستینگها سرور تهیه کردهایم و اکثرا در هاست های اشتراکی TTFB بالایی را داشتند، مگر سرور مجازی یا اختصاصی تهیه کرده باشید.
خطای TTFB
استفاده از کش مناسب در سایت
راه سوم و شاید راحت ترین راه کاهش TTFB استفاده از caching در وبسایت وردپرسی است. افراد زیادی فکر می کنند که تنها استفاده از caching می تواند باعث کاهش زمان بارگذاری صفحه شود، اما در حقیقت در کاهش TTFB نیز موثر است و همچنین زمان پردازش سرور را نیز کاهش می دهد. برای اطلاعات بیشتر به مقاله نحوه کش کردن سایت مراجعه نمایید.
استفاده از یک DNS Provider معتبر (رایگان نباشد)
DNS نیز در TTFB موثر است. محاسبه دقیق مقدار این تاثیر بسیار سخت است، اما همچنان میتوانید زمان کلی DNS lookup را مشاهده کنید. Provider های سریع و آهسته ای وجود دارند. با استفاده از ابزار SolveDNS speed test میتوانید از مکانهای مختلف آزمایش لازم را انجام دهید. برای کاهش زمان لود DNS میتوانید پست ۸ راه کاهش DNS Lookups و رفع خطای Reduce DNS lookups در GTmetrix مطالعه نمایید.
بیشتر بخوانید :
دیدگاهتان را بنویسید