CDN ابری

آشنایی با تأخیر شبکه از زبان میزبان کلود

shahin شاهین نوعی
22 بازدید | 0 دیدگاه | 29 مرداد 1401
/storage/post-images/1654285762_2022-06-04_blog_post_13-8.png
سرفصل های مهم
آشنایی با تأخیر شبکه از زبان میزبان کلود

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

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

در این پست قصد داریم شما را با صفر تا صد تأخیر شبکه، از آنچه باعث ایجاد تأخیر می شود تا روش های کاهش آن آشنا کنیم. به این صورت می توانید عملکرد سایت خود را ارتقا بخشیده و یک تجربه کاربری بی نقص برای تمام کاربران خود ایجاد کنید؛ بدون در نظر گرفتن موقعیت آنها!

تأخیر شبکه چیست؟

تأخیر شبکه که گاهاً آن را کندی یا لَگ شبکه نیز می نامند،  به زمانی اطلاق دارد که یک درخواست در سفر خود از ارسال کننده به دریافت کننده صرف کرده و سپس پذیرنده آن درخواست را پردازش می کند. به زبان دیگر، به مدت زمانی که طول می کشد تا یک درخواست از مرورگر شما به سمت سرور ارسال شده و پس از پردازش توسط سرور، پاسخ مناسب ارسال شود، تأخیر شبکه گویند.

زمانی که تأخیرات ارتباطی کوتاه باشند، به آن شبکه به اصطلاح  شبکه کم-تأخیر یا low-latency گویند؛ و مسلماً تأخیرات طولانی تر، شبکه high-latency. هر تأخیری به نوبه خود بر عملکرد یک وب سایت تأثیر خواهد گذاشت.

یک فروشگاه اینترنتی ساده را تصور کنید که به تمام کاربران سطح جهان خدمت رسانی می کند؛ تأخیر زیاد در شبکه باعث دشواری در بررسی دسته بندی ها و محصولات توسط کاربران شده و در چنین فضای رقابتی در عرصه خرده فروشی آنلاین، هر ثانیه اضافی در لود شدن، می تواند فروش محصولات را به شدت کاهش دهد.

تأخیر شبکه چطور بر عملکرد سایت تأثیر می گذارد؟

تقریباً باید حدس زده باشید؛ وب اپلیکیشن شما یعنی وب سایت یا اپلیکیشن اینترنتی شما، بر مبنای موقعیت جغرافیایی کاربر رفتار متفاوتی از خود نمایش خواهد داد، و قطعاً این موضوع به چیزی به نام تأخیر شبکه ربط دارد.

مطمئن باشید تجربه ای که مشتری شما در آن سوی جهان از سایت شما دارد، با چیزی که شما در تست های خود می بینید، بسیار تفاوت دارد. این موضوع بسیار مهم است که داده ها را از جایی نزدیک به کاربر نهایی جمع آوری کنید. این تنها راهی است که می توانید برای حل این مشکل انجام دهید.

توانایی ارائه خدمت به تمام نقاط جهان ابتدا تصویر برند مناسبی برای شما ایجاد کرده و سپس کسب و کار شما را تحت تأثیر قرار خواهد داد. البته این موضوع تنها به ارائه خدمات به کلیه کشورهای جهان نیست! ممکن است فقط بخواهید به شهرهای مختلف ایران خدمت رسانی کنید؛ اما موضوع تأخیر شبکه در این ناحیه نیز مطرح است.

همین تأخیر کوچک و تغییر در تجربه کاربری نیز می تواند نمودارهای مالی شما را جا به جا کند.

با توجه به همان مثال فروشگاه اینترنتی، به نقل از Yoast 79% از خریداران اینترنتی، اظهار داشته اند که به سایتی که در لود صفحات عملکرد ضعیفی داشته، باز نخواهند گشت.

البته این موضوع را نیز فراموش نکنید که سایت سریعتر مطمئناً نرخ تبدیل بالاتر و بانس ریت پایین تری دارد.

پس موضوع این نیست که آیا می توانید بر روی بهینه سازی سرعت سایتتان سرمایه گذاری کنید یا نه، موضوع این است که آیا می توانید آن را نادیده بگیرید؟

چه چیزی باعث تأخیر شبکه می شود؟

متغیرهای بی شماری وجود دارند که می توانند تأخیر در شبکه را به وجود آورند، اما اکثر آنها به این 4 دسته تقسیم می شوند:

  • رسانگرهای انتقالی: داده های شما در فرم های مختلفی، مسافت های طولانی را طی خواهند کرد، چه از سیگنال های کابل های مسی استفاده کنند و چه موج های سبک فیبرهای نوری. هر بار که از یک رسانگر یا medium به دیگری تغییر جهت می دهد، چند میلی ثانیه به زمان انتقال کلی اضافه می شود.
  • Payload: هرچه داده های بیشتری انتقال یابند، سرعت ارتباطات بین کلاینت و سرور کاهش می یابد.
  • روترها:  روترها برای تحلیل اطلاعات درون هدر هر بسته و اضافه کردن اطلاعات به آن زمان زیادی صرف می کنند؛ هر پرشی که یک بسته از یک روتر به روتری دیگر طی می کند،  زمان تأخیر را افزایش می دهد به علاوه، با توجه به دستگاه، ممکن است آدرس های MAC و جستجوهای جداول مسیریابی نیز به این فرآیند اضافه شود.
  • تأخیرات ذخیره سازی: در زمان های ذخیره سازی یا دسترسی به بسته ها نیز ممکن است تأخیراتی رخ دهد؛ این موضوع به تأخیراتی منتج می شود که توسط دستگاه های میانی مثل سوییچ ها و پل ها ایجاد می شوند.

به طور خلاصه، سفر داده ها در اینترنت معمولاً با عبور از چند شبکه همراه است. هرچه یک پاسخ HTTP مجبور باشد از شبکه های بیشتری عبور کند، احتمال وقوع تأخیرات بیشتر می شود. برای مثال، بسته های داده ای که بین چند شبکه در جریان هستند، از IXP یا نقاط تبادلی اینترنت می گذرند. در آنجا، روترها باید بسته های داده را پردازش و مسیردهی کنند، و گاهاً ممکن است لازم باشد تا روترها آنها را به بسته های کوچک تری تقسیم کنند، تمام اینها چند میلی ثانیه به RTT اضافه خواهد کرد.

تأخیر شبکه، پهنای باند و Throughput

تأخیر، پهنای باند و throughput همگی با هم همبستگی دارند، اما هر کدام یک چیز متفاوت را اندازه می گیرد؛  پهنای باند ماکسیموم داده ای است که می تواند در یک زمان مشخص از شبکه عبور کند. Throughput میانگین حجم داده هایی است که در واقعیت در زمان مشخص از شبکه عبور می کند. Throughput لزوماً هم معنای پهنای باند نبوده و تحت تأثیر تأخیر شبکه و فاکتورهای بسیاری است. تأخیر نیز مقیاسی زمانی است که به میزان داده های دانلود شده در زمان مربوط نمی شود بلکه به مدت زمان ارسال و دریافت پاسخ اشاره دارد.

تا چه حد تأخیر، خوب محسوب می شود؟

تأخیر شبکه به میلی ثانیه محاسبه می شود؛ در جریان تست های سرعت، به آن نرخ پینگ گویند؛ مسلماً هرچه تأخیر به صفر نزدیک تر باشد، بهتر است. اما همچنین چیزی ممکن نیست.

همیشه یک تأخیر از سمت کاربر ایجاد می شود، چراکه مرورگر به زمانی برای پردازش درخواست ها و رندر کردن پاسخ های دریافتی نیاز دارد.

با در نظر گرفتن این موضوع و دانش بر این که هر شرایطی راه و روش و دلایل خود را دارد، می توان به یک عدد جهانی کلی رسید که بتوان یک تأخیر شبکه را معقول بشمار آورد. پس در کل یک تأخیر شبکه زیر 150 میلی ثانیه، قابل قبول محسوب می شود.

این یعنی تمام عناصر وب سایت شما، از تصاویر گرفته تا اسکریپت ها، عناصر داینامیک و غیره، باید زیر 3 ثانیه لود شوند.

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

بهترین راهکارها برای کاهش تأخیر شبکه

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

باید همیشه نیم نگاهی به تأخیر شبکه داشته باشید و از این موضوع مطمئن شوید که از حد مشخصی بالاتر نرود؛ از طرفی باید رقبای خود را نیز مداوماً رصد کنید تا در هیچ زمینه ای از آنها عقب نمانید.

چطور تأخیر شبکه را چک کنیم؟

اگر بخواهید تأخیر شبکه را برای وب سایت یا اپلیکیشن خود چک کنید می توانید با یک دستور ساده بر روی ویندوز، مک، لینوکس و غیره، از سرور پینگ گرفته و RTT را مشاهده کنید.

برای اینکار کافیست پس از باز کردن command prompt یا پنجره terminal، عبارت cmd google.com یا هر آدرس وب سایتی را تایپ کنید.

 

RTT یا زمان سفر رفت و برگشتی، به سادگی به شما می گوید که تأخیر آن سایت مورد نظر چقدر است.

این تأخیر در لحظه ای که شما تست را انجام می دهید صحیح است؛ اما نمی توان مطمئن بود که در زمان های مختلف روز این تأخیر تغییری نکند.

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

چطور تأخیر شبکه را محاسبه کنیم؟

تأخیر شبکه توسط دو معیار محاسبه می شود؛ زمان اولین بایت، و RTT.

برای تست شبکه می توانید از هر دوی این معیارها استفاده کنید؛ ولی با این وجود، بدون در نظر گرفت معیار، مطمئن شوید که تمام رکوردها را در یک دسته مشابه قرار می دهید.  باید تمام تغییرات را برای ایجاد یک تجربه کاربری ایده آل رصد کنید.

  • زمان اولین بایت یا Time to First Byte

TTFB به زمانی اشاره دارد که پس از برقراری ارتباط با سرور، اولین بایت هر فایل به مرورگر کاربر می رسد.

TTFB تحت تأثیر سه فاکتور اصلی است:

  • زمانی که یک درخواست برای انتقال در شبکه به سمت وب سرور صرف می کند.
  • زمانی که طول می کشد تا وب سرور درخواست را پردازش کرده و پاسخ را آماده کند.
  • زمانی که لازم است تا پاسخ از وب سرور به سمت مرورگر صرف کند.

زمان سفر بازگشتی یا Round Trip Time

RTT به مدت زمانی اشاره دارد که یک مرورگر درخواستی را ارسال کرده و از سرور یک پاسخ دریافت می کند. احتمالاً RTT محبوب ترین معیاری است که برای سنجش تأخیر شبکه مورد استفاده قرار می گیرد. این معیار به میلی ثانیه محاسبه می شود.

RTT تحت تأثیر چند عنصر شبکه است:

  • مسافت: هرچه مسافت بین سرور و کلاینت بیشتر باشد، سیگنال به مدت زمان بیشتری برای بازگشت نیاز خواهد داشت.
  • رسانگر انتقالی: Medium یا رسانگری که برای مسیردهی یک سیگنال مورد استفاده قرار می گیرد. این می تواند یک کابل مسی، فیبر نوری، وایرلس، یا ماهواره باشد که هر کدام می تواند بر تأخیر شبکه موثر باشند.
  • تعداد پرش های شبکه ای: سرورها و روترهای میانی برای پردازش یک سیگنال به زمان احتیاج دارند، که RTT را افزایش می دهند. هرچه تعداد پرش ها یا Hop های یک سیگنال در سفر خود بیشتر باشد، RTT بیشتر می شود، که تأخیر را در انتها افزایش می دهد.
  • سطوح ترافیکی: معمولاً زمانی که شبکه با ترافیک های زیاد مسدود می شود، RTT افزایش پیدا می کند؛ و برعکس، هر چه ترافیک کمتر باشد، RTT کاهش می یابد.

چطور تأخیر شبکه را به حداقل برسانیم؟

فرض کنید که با کاربران بسیاری در سراسر جهان در تعامل هستید؛ و این مهم را می دانید که عملکرد سایت تان برای تک تک کاربران بدون در نظر گرفتن موقعیت آنها تأثیر بسیار زیادی بر کسب و کارتان دارد.

پس فقط روش های کاهش تأخیر مانده...

دو رویکرد مانیتورینگ وجود دارد که می تواند به کاهش تأخیر شبکه کمک کند؛ مانیتورینگ مصنوعی، و مانیتورینگ کاربر واقعی.

ابزارهای مانیتورینگ Synthetic یا مصنوعی، مثل Sematext synthetics به شما اجازه می دهد تا API های خود را به صورت مصنوعی صدا زده و تمام افزایش های تأخیر یا افت عملکرد را مشاهده کنید. اما، تراکنش های مصنوعی نمی توانند دقیقاً به شما بگویند که کاربران چطور با سرویس های شما در تعامل هستند. اما مانیتورینگ کاربر واقعی می تواند اینکار را تکمیل کند.

در سالیان اخیر محبوبیت ابزارهای RUM یا real user monitoring رشد کرده و تعداد ارائه دهندگان این گونه خدمات نیز در سراسر جهان گسترش یافته اند. این نیاز پایان ناپذیر رصد و فهم رفتار کاربران منجر به تولید روش هایی شد که شرکت ها بجای رصد منابع سرور، به تجربه و رفتار کاربران در سایت بیشتر توجه کنند.

اینجاست که می توانید از ابزارهایی مثل Sematext experience استفاده کنید. البته این ابزار یک ابزار غیر رایگان و خارجی است که ممکن است شما را با محدودیت هایی مواجه کند.

راهکارهای دیگری نیز وجود دارد که می تواند به توسعه دهندگان کمک کنند تا منابع render-blocking را به حداقل رسانده و تصاویر و سایر فایل های موجود را فشرده تر کنند. Minify کردن کدها یکی از متداول ترین راه های کاهش حجم فایل های css و javascript است.

استفاده از CDN یکی از بزرگ ترین قدم هایی است که می توان برای کاهش تأخیر شبکه برداشت؛ یک CDN محتوای استاتیک را کش کرده و آن را در اختیار کاربران قرار می دهد؛ سرورهای CDN در موقعیت های مختلف توزیع شده و محتوا را به کاربر نزدیک تر می کند. بنابراین یک درخواست ملزم نیست تا مسافت طولانی تری را برای دریافت پاسخ طی کند. پس زمان لود شدن صفحات کاهش می یابد؛

راهکار میزبان کلود

یکی از بهترین رویکردها برای کاهش تأخیرات شبکه ای استفاده از شبکه توزیع محتوا یا CDN است. CDN میزبان کلود به شما کمک می کند تا با استفاده از بروزترین تکنولوژی ها و معماری هایی نظیر Anycast محتوای سایت خود را در سریعترین زمان ممکن و با توجه به موقعیت جغرافیایی کاربران در معرض دید آنها قرار دهید.

به کمک سرورهای لبه ی میزبان کلود که در مهمترین موقعیت های جغرافیایی ایران و جهان مستقر شده اند، می توانید محتوای سایت خود را بدون نیاز به دانش فنی، در نقاط مختلف کش و آماده کرده، و پس از دریافت درخواست از مرورگرهای کاربران، با توجه به IP دستگاه، از نزدیک ترین سرور لبه، فایل ها و منابع را دریافت کرده و با کم ترین تأخیر آنها را در دسترس مخاطبان خود قرار دهید.

علاوه بر CDN میزبان کلود می توانید از قابلیت های بی نظیر DNS ابری میزبان کلود نیز بهره مند شده و فرآیند تفسیر نام دامنه سایت خود را با بالاترین سرعت اانجام دهید.

پیشنهاد می کنیم به صفحات CDN ابری و DNS ابری میزبان کلود مراجعه کرده و با ویژگی ها و قابلیت های منحصر به فرد آنها بیشتر آشنا شوید. در صورت داشتن هرگونه سوال در خصوص نحوه فعالسازی سرویس ها می توانید با کارشناسان ما در ارتباط باشید.

جمع بندی

دانستن نحوه رفتار و تجربه کاربران در سایت می تواند بر بازگرداندن آنها و در نهایت نقاط سر به سر کسب و کارتان تأثیر بالقوه ای گذارد. تأخیر در شبکه همیشه بر عملکرد سایت شما تأثیر خواهد گذاشت اما اینکه چطور بتوانید با استفاده از ابزارها و روش های مختلف آن را به حداقل برسانید، می تواند درآمد زایی و رشد کسب و کار شما را به طرز قابل توجهی ارتقا بخشد. در این مطلب به چیستی تأخیر شبکه و دلایل افزایش آن اشاره شد و چند رویکرد موثر برای کاهش تأخیرات نیز ارائه شد. امیدواریم این مطلب برای شما مفید واقع شده باشد.

 




پیشنهاد ویژه

CDN ابری میزبان کلود

سرعت در بارگذاری و تحویل محتوای سایت

سرعت در بارگذاری و تحویل محتوای سایت

سرعت در بارگذاری و تحویل محتوای سایت

سرعت در بارگذاری و تحویل محتوای سایت

مشاهده پلانها
برچسب ها :
نویسنده مطلب شاهین نوعی

Hi everyone, my name is Shahin Noei; I'm so glad to be sharing with you my latest knowledge of IT infrastructure and I warmly invite you to ask any of your questions in my linkedin page. I've been working in digital marketing field for the last 5 years and I've been in touch with some IT businesses long enough to get the most out of the newest technologies in this modern era.

آشنایی با تأخیر شبکه از زبان میزبان کلود 0 دیدگاه

مطالب را قبل از دیگران مطالعه کنید

دریافت جدیدترین مطالب در ایمیل شما

ایمیل شما به صورت کاملا محرمانه نزد ما محفوظ است
ما برای شما هرزنامه ارسال نمی کنیم