آموزش جی تی متریکس | قسمت ۲ - TTFB چیست؟

آموزش جی تی متریکس

چهارشنبه 17 دی 99

 

آموزش جی تی متریکس : قسمت ۲- TTFB چیست؟

TTFBمخفف عبارت Byte Time to First به معنی "زمان تا اولین بایت" است که به آن سرعت پاسخگویی سرور هم می‌گویند. TTFB یکی دیگر از معیارهای جی‌تی‌متریکس است که در امتیاز نهایی وب‌سایت شما تأثیر زیادی خواهد داشت.  اما منظور از زمان تا اولین بایت چیست؟ همان‌طور که احتمالا می‌دانید، برای بارگذاری یک صفحه وب و اجزای آن، درخواست‌هایی از سوی مرورگر شما برای سرور ارسال می‌شود، سرور این درخواست را بررسی (process) می‌کند و در نهایت به آن پاسخ می‌دهد. TTFB مدت زمانی را نشان می‌دهد که مرورگر شما، بعد از ارسال درخواست، اولین بایت را دریافت می‌کند.

TTFB چیست

باید تا جایی که می‌توانید مدت زمان پاسخگویی سرور یا همان TTFB را پایین بیاورید چرا که در تجربه کاربر از وب‌سایت شما به شدت تأثیرگذار است. زمان پاسخدهی سرور همه اجزا و عناصری را که در HTML به آنها ارجاع داده شده است شامل می‌شود و تأثیری مستقیم در مدت زمان بارگذاری صفحه شما دارد. به‌علاوه، کند بودن مدت زمانِ بارگذاری در  فرانت اند (Front-end) شما هم اثر دارد و باعث می‌شود کاربر، تا زمان پاسخدهی از جانب سرور، بخش‌هایی از صفحه شما را خالی ببیند. بهبود TTFB در بک اند (Back-end) می‌تواند مشکل فرانت اند شما را هم حل کند.

زمان پاسخدهی سرور چگونه کارایی صفحه شما را تحت تأثیر قرار می‌دهد؟

 همان‌طور که گفته شد، وقتی کاربری به صفحه شما مراجعه می‌کند، درخواستی از سوی مرورگر او برای سرور فرستاده می‌شود. سرور این درخواست را بررسی می‌کند و پاسخ مناسبِ آن را ارسال می‌کند که شامل عناصر و منابع صفحه مانند تصاویر، متون و ویدئوها می‌شود. این روند شاید ساده به نظر برسد اما به عوامل متعددی متکی است؛ عواملی مانند سرعت انتقال شبکه، مدت زمان تأخیر و عملکرد کدها و سرور. به عبارت دیگر اگر هر یک از این عوامل کند عمل کنند، TTFB شما تحت تأثیر قرار می‌گیرد. Bottom of Form

هر چه زمان پاسخدهی سرور بیشتر باشد، صفحه شما بیشتر به مشکل بر می‌خورد، کاربر بخش‌هایی از صفحه را نمی‌بیند یا خالی می‌بینید و باید منتظر بارگذاری صفحه بماند. در این شرایط طبیعی است اگر فرد از صبر کردن خسته شود و کلا صفحه را ترک کند. اما اگر این مدت زمان کوتاه و پاسخدهی سرور سریع باشد، صفحه سریع‌تر بارگذاری می‌شود و کاربر سریع‌تر به آنچه می‌خواهد می‌رسد.

توجه داشته باشید که تعاریف مختلفی برای TTFB وجود دارد، آنچه جی‌تی‌متریکس به آن تکیه می‌کند ترکیبی است از مدت زمانی که صرف تغییر مسیر (Redirect)، ارتباط (Connection) و بک اند می‌شود. اما این زمان‌های صرف شده چه هستند؟

تغییر مسیر یا ریدایرکت کردن

ابتدا به سراغ زمان صرف شده برای تغییر مسیر یا آدرس‌دهی می‌رویم. همانطور که در تاثیر ریدایرکت در سئو بصورت مفصل بررسی شد، ریدایرکت کردن یعنی تغییر مسیر یک صفحه یا کاربر آن به صفحه‌ای دیگر. روش‌های مختلفی برای انجام ریدایرکت ها وجود دارد. مرسوم‌ترینِ نوع این تغییر مسیر هم ریدایرکت 301 است که روش‌های انجام آن را در این بخش می‌خوانید.

 

انواع ریدایرکت

باید با توجه به شرایط و امکاناتتان یکی از راه‌های موجود را انتخاب کنید. روش انتخابی شما حتما در TTFB تأثیرگذار خواهد بود. در اینجا 5 روش انتخام ریدایرکت 301 ذکر می‌شود که عملا سه مورد آن مناسب است:

1.    با استفاده از وب سرور: در این روش باید به فایل .htaccess سایت دسترسی داشته باشید و تغییرات را در این بخش اعمال کنید. این روش به دانش فنی نیاز دارد اما در عین حال سریع‌ترین حالت هم هست و در نتیجه می‌تواند در کاهش سرعت بارگذاری صفحه به شما  کمک کند.

2.    با استفاده از کش سرور: این روش با اینکه سرعت استفاده از وب سرور را ندارد، اما سرعت آن همچنان معقول است و استفاده از آن می‌تواند گزینه مناسبی برای شما باشد.

3.    با استفاده از کدنویسی: در این روش با اعمال تغییراتی در هدرهای صفحه، عمل انتقال یا ریدایرکت انجام می‌شود. این روش نسبت به دو حالت قبلی کندتر است چرا که باید یک کامپایلر به وب‌ سرور افزوده شود. اگر از وردپرس استفاده می‌کنید و با کمک قابلیت‌های خود CMS عملیات ریدایرکت را انجام می‌دهید، حتما با مشکل سرعت بارگذاری مواجه خواهید شد. بهتر است این کار را با ویرایش فایل .htaccess انجام دهید.

4.    با استفاده از جاوااسکریپت: این روش نسبت به حالت‌های قبلی کند است و توصیه نمی‌شود.

5.    با استفاده از کدهای HTML: این روش نسبت به حالت‌های قبلی کند است و توصیه نمی‌شود. 

ارتباط یا کانکشن

منظور از ارتباط همان مدت زمانی است که درخواست از سمت مرورگر به سرور ارسال می‌شود. TTFB این زمان و مسیر را بررسی می‌کند تا مطمئن شود که به درستی انجام شده‌اند. البته شما هم با ابزارهایی مانند Trace Route می‌توانید این کار را انجام دهید. این ابزار همچنین به شما امکان مشاهدۀ تعداد  timeoutهای مسیر را می‌دهد. مجموع این زمان‌های سپری شده connection time را تشکیل می‌دهد. طبیعتا هرچه این زمان کوتاه‌تر باشد در آنالیز TTFB بهتر خواهد بود.

با اینکه جی‌تی‌متریکس در سنجش خود بیشتر به مدت زمان پاسخدهی سرور نگاه می‌کند که همان مدت زمان صرف شده در بک اند است، اما اگر به دنبال بهبود امتیاز خود هستید باید بهبود در تمام موارد ذکر شده را در نظر بگیرید. مثلا این زمان TTFB برای سایت moz.com  80 میلی ثانیه است که حتی به یک دهم ثانیه هم نمی‌رسد. این 80 میلی ثانیه شامل سه قسمت Redirect=41 ،Connect=15 و Backend=24 است

معیار جی‌تی‌متریکس برای امتیازدهی به TTFB چقدر است؟

همان طور که گفته شد در نتیجه TTFB، مواردی مانند کانکشن، تغییر مسیر و بک‌اند تأثیرگذار است. در پاسخدهی سرور هم عواملی مانند کدهای برنامه‌نویسی سایت، پایگاه داده، قدرت سرور، DNS Lookup و تمام موارد مربوط به سرور مهم هستند. اگر مدت زمان پاسخدهی سرور برای صفحه شما از 600 میلی‌ثانیه عبور کند، جی‌تی‌متریکس آن را در امتیازدهیِ منفی به صفحه شما در نظر می‌گیرد.

چگونه مدت زمان پاسخدهی سرور را کاهش دهیم؟

راه‌های مختلی برای حل این مشکل وجود دارد که به برخی از مهم‌ترینِ آنها اشاره می‌کنیم:

1)    بهینه‌سازی کدها (به‌خصوص کدهای مرتبط با درخواست‌های دیتابیس یا پایگاه‌داده‌ها)

کدها برای بهینه‌سازی عملکرد سایت حیاتی هستند. بهتر است برای رفع این مشکل از برنامه‌نویسان حرفه‌ای کمک بگیرید چرا که این مشکل مستقیما با هسته اصلی سایت شما در ارتباط است. در این حالت می‌توانید روش‌های زیر را استفاده کنید.

·       کارآمدسازی کدها برای اینکه به عملکردهای کارآمدتری برسید.

·       ساده‌سازی عملکردهای پیچیده و دسته‌بندی کدها به طوری که تا زمان نیاز اجرا نشوند.

·       بهینه‌سازی درخواست‌های مرتبط با پایگاه‌های داده‌ و حذف درخواست‌های غیرضروری.

 

2)    استفاده از امکان کش (Cach) شدن سایت در سرور

کش کردن در بهبود سرعت سایت بسیار موثر است. در این روش، نسخۀ از قبل بارگذاری شده‌ای از صفحه شما در سرور وجود دارد که هنگام ثبت درخواست از سوی مرورگر، این نسخه بارگذاری می‌شود. طبیعتاً این روش خیلی بهتر و سریع‌تر از زمانی است که سرور باید بعد از هر ثبت درخواست، یک بار درخواست را بررسی و صفحه را بارگذاری کند.

راه‌های مختلفی برای کَش کردن سایت وجود دارد که قابل اعمال روی سرورها یا سیستم‌های مدیریت محتوا (CMS) مانند وردپرس هستند. ممکن است هاستی که از آن استفاده می‌کنید قابلیت کشِ سروری را داشته باشد، می‌توانید در این زمینه از آنها کمک بگیرید. اگر هم از سیستم‌های مدیریت محتوا استفاده می‌کنید، پلاگین‌هایی هستند که می‌توانند به شما کمک کنند.

3)    بهبود سخت‌افزاری سی‌پی‌یو یا حافظه سرور

راه حل دیگر حل مسأله سرعت بارگذاری سایت، استفاده از سخت‌افزارهای قوی‌تر است. اگر از نظر مالی توانایی انجام این کار را دارید، حتما با کارشناسان هاست خود یا برنامه‌نویسان تماس بگیرید تا میزان مصرف سایت شما را تحلیل کنند و برای بهبود و به‌روز‌رسانی سخت‌افزاری سایت، به شما کمک کنند. البته اگر کدنویسی سایت شما مشکلات جدی داشته باشد، هرچقدر هم که سخت‌افزار خود را قوی کنید، کار به جایی نمی‌برید.

خلاصه اینکه باید شرایط سایت خود را بسنجید، معایب و مزایای هر کدام از این روش‌ها را در نظر بگیرید و در نهایت راه حلی که مناسب شما است را پیدا کنید.

 

مقالات مرتبط

نظرات کاربران

نظر تازه ای ثبت کنید

برای ثبت نظر وارد سایت شوید