از تفاوت های Buffering & Caching با خبر شوید!

تفاوت Buffering & Caching

قبل از هر چیز ابتدا بهتر است به شناخت Buffering & Caching برسیم. البته در صورت علاقه مندی می توانید با مراجعه به مقاله پروتکل احراز هویت Kerberos با کارایی آن نیز آشنا شوید.

بافرینگ (Buffering)

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

کاربرد های بافرینگ

بافرینگ بصورت گسترده ای امروزه در پرینترها مورد استفاده قرار می گیرد و به ویژه در فرآیند Printer Spooling بافر نقش تاثیر گذاری دارد،
از طرفی برخی از سیستم های ویدیو آنلاین یا سرویس های Video Streaming نیز از بافرینگ بصورت گسترده ای استفاده می کنند،
دقت کرده اید که هرگاه از وایبر ویدیویی را نگاه می کنید. اگر سرعت شما کمتر از سرور باشد در کنار آن Buffering نوشته می شود.
بیشتر اوقات بافرینگ به این شکل انجام می شود. که داده های ما در یک صف یا queue با یک سرعت معین نوشته و نگهداری می شوند
و از طریق یک صف یا queue دیگر با سرعت متفاوتی خوانده می شوند.

Buffering

کشینگ (Caching)

فرآیند Caching یا کشینگ به ذخیره کردن داده ها در یک قسمت جداگانه به نام Cache در سیستم گفته می شود
تا در صورت نیاز به دسترسی به داده های مورد نظر در آینده سرعت دستیابی به این داده ها زیادتر از حالت عادی باشد.
زمانیکه یک داده درخواست داده می شود قبل از اینکه حافظه RAM و یا هارد دیسک جستجو شود، محتویات Cache سیستم بازرسی می شود.

Cach memory

در صورتیکه داده مورد نظر در Cache سیستم وجود داشته باشد سرعت دسترسی به آن بسیار بالا خواهد بود.
اگر داده درخواستی در Cache وجود داشته باشد در اصطلاح فنی به آن Cache Hit گفته می شود.
بدون شک با تقاسیری که گفتیم زمانیکه داده ای از Cache سیستم خوانده می شود.
سرعت خواندن آن بسیار بالاتر از محل اصلی است که داده در آن ذخیره شده است.
اگر داده درخواستی در Cache وجود نداشت در اصطلاح فنی یک Cache Miss اتفاق افتاده است.
در چنین حالتی داده بایستی از محل اصلی ذخیره سازی آن درخواست داده شود که ای فرآیند طبیعتا زمان بیشتری را می طلبد.

فرآیند Caching چگونه انجام می شود؟

فرآیند Caching در محل های متنوعی انجام می شود.
در CPU با استفاده از فرآیند Caching شما تا حدود زیادی سرعت دسترسی به اطلاعات را بالا می برید.
زیرا سیستم به جای استفاده از حافظه RAM از حافظه Cache استفاده می کند،
دقت کنید که حافظه Cache در سیستم ها معمولا بین CPU و حافظه RAM قرار می گیرد
و به همین دلیل سرعت دسترسی به آن توسط CPU از سرعت دسترسی به RAM بالاتر است.
اما این تنها جایی نیست که در آن فرآیند Caching مورد استفاده قرار می گیرد.

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

تفاوت Buffering & Caching در چیست؟

تنها تشابهی که در بین فرآیند Caching و Buffering وجود داشت.
این بود که داده ها در یک محل موقتی به غیر از محل اصلی نگهداری آنها ذخیره شوند اما تفاوت های آنها کاملا اساسی است.
Caching برای افزایش سرعت دسترسی به داده ها در زمانیکه از دستگاه های ذخیره سازی کند استفاده می کنیم بکار می رود.
ایده اصلی Caching این است که داده هایی که بصورت مکرر مورد استفاده قرار می گیرند بایستی در محلی قرار بگیرند که سریعتر در دسترس قرار بگیرند،
برای مثال شما در یک Cache Server ای به نام Squid وب سایت های پر بازدید را Cache می کنید نه همه وب سایت ها را،
اما Buffering برای تنظیم کردن سرعت ارسال و دریافت اطلاعات در دو نوع ارتباط با سرعت های مختلف مورد استفاده قرار می گرفت.
تا مشکل Bottleneck در این میان پیش نیاید و مهمترین کاربرد آن در پرینتر Spooler است.

درنتیجه

خوشحالیم که با تفاوت های Buffering & Caching به خوبی آشنا شده اید. همان طوری که اشاره کردیم Caching جهت افزایش سرعت به داده ها و Buffering برای تنظیم سرعت ارسال و دریافت اطلاعات استفاده می شود. جهت کسب اطلاعات بیشتر با کارشناسان متخصص در حوزه ای تی تماس حاصل فرمایید.

چهره ی خندان داشتن دلیل بر حضور نداشتن غم و اندوه نیست بلکه:به معنای توانایی برخورد با آن است. 

دانلود pdf تفاوت Buffering & Caching

ثبت امتیاز post

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *