گاما رو نصب کن!

{{ number }}
اعلان ها
اعلان جدیدی وجود ندارد!
کاربر جدید

جستجو

پربازدیدها: #{{ tag.title }}

میتونی لایو بذاری!
نمونه سوال محتوای آموزشی آزمون آنلاین پرسش و پاسخ درسنامه آموزشی مدرسه‌یاب معلم‌ها

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

بروزرسانی شده در: 20:08 1405/02/3 مشاهده: 85     دسته بندی: کپسول آموزشی

حافظه پنهان مرورگر (کش): ذخیره‌سازی هوشمند برای سرعت بیشتر

آشنایی با مفهوم، انواع، مزایا، چالش‌ها و روش مدیریت کش در مرورگرهای مختلف
خلاصه — حافظه پنهان مرورگر یا «کش»[1] مکانی در رایانه است که مرورگر وب، داده‌های سایت‌ها را به صورت موقت در آن ذخیره می‌کند. این کار باعث می‌شود دفعه بعدی که از همان سایت بازدید می‌کنید، صفحه سریع‌تر بارگذاری شود. کش می‌تواند شامل تصاویر، فایل‌های سی‌اس‌اس، جاوااسکریپت و حتی پاسخ‌های سرور باشد. در این مقاله با انواع کش، تفاوت آن با حافظهٔ پنهان دی‌ان‌اس[2] و کوکی‌ها[3]، روش مشاهده و پاک کردن کش، و چالش‌های مفهومی آن آشنا می‌شوید.

کش مرورگر چیست و چگونه کار می‌کند؟

وقتی برای اولین بار به یک وب‌سایت مراجعه می‌کنید، مرورگر شما بسیاری از فایل‌های آن سایت (مانند لوگو، قالب‌بندی، و اسکریپت‌ها) را دانلود کرده و در پوشه‌ای خاص روی هارددیسک یا حافظه اس‌اس‌دی ذخیره می‌کند. به این پوشه، «حافظه پنهان مرورگر» می‌گویند. در بازدیدهای بعدی، مرورگر به جای دانلود دوبارهٔ همهٔ فایل‌ها، ابتدا بررسی می‌کند که آیا نسخهٔ ذخیره‌شدهٔ آنها هنوز معتبر است یا نه. اگر معتبر باشد، فایل‌ها را از کش خوانده و بارگذاری صفحه بسیار سریع‌تر انجام می‌شود.

مثالی ساده: تصور کنید کتابخانه‌ای دارید که کتاب‌های پرمخاطب را روی یک قفسهٔ نزدیک به در ورودی قرار می‌دهد. دفعهٔ اول که کتابی را می‌خواهید، باید به انبار اصلی بروید (دانلود از سرور). اما دفعهٔ دوم، آن کتاب را همان دم دست روی قفسهٔ نزدیک پیدا می‌کنید (کش). این قفسهٔ نزدیک، همان حافظهٔ پنهان مرورگر شماست.

نکته فنی: هر فایل ذخیره‌شده در کش، دارای یک «سرآیند تاریخ انقضا»[4] یا برچسب زمانی است. سرور مشخص می‌کند که این فایل تا چه زمانی معتبر باقی می‌ماند. مثلاً لوگوی سایت ممکن است برای یک هفته معتبر باشد، در حالی که صفحهٔ اصلی ممکن است فقط ۱۰ دقیقه معتبر بماند.

انواع حافظه پنهان در مرورگر

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

نوع کش محتوای ذخیره‌شده مدت ماندگاری معمول
کش منابع ایستا تصاویر، فایل‌های سی‌اس‌اس، جاوااسکریپت، فونت‌ها چند روز تا یک سال
کش صفحه محتوای اچ‌تی‌ام‌ال[5] کامل صفحه چند دقیقه تا چند ساعت
کش ای‌پی‌آی[6] و پاسخ‌های سرور داده‌های دریافتی از سرور (مثلاً وضعیت آب و هوا) چند دقیقه
کش سرویس‌کارگر[7] منابع برنامه‌های پیشرو (اجرای آفلاین) مشخص شده توسط برنامه

مثال عملی: تفاوت بارگذاری با کش و بدون کش

فرض کنید یک وب‌سایت خبری دارای ۵۰ تصویر و ۳ فایل سی‌اس‌اس است. بدون کش، مرورگر برای هر بار بازدید باید همهٔ ۵۳ فایل را دوباره دانلود کند. با فعال بودن کش، در بازدید دوم تنها فایل‌هایی دانلود می‌شوند که تغییر کرده‌اند (مثلاً دو تصویر جدید). این تفاوت در زمان بارگذاری صفحه، به خصوص در اینترنت‌های کم‌سرعت، بسیار چشمگیر است.

رابطهٔ ریاضی صرفه‌جویی در زمان: اگر $T_{download}$ زمان دانلود هر فایل و $N$ تعداد کل فایل‌ها باشد، در حالت بدون کش زمان بارگذاری برابر است با $T_{total}=N \times T_{download}$. در حالت استفاده از کش، اگر فقط $k$ فایل تغییر کرده باشند، زمان بارگذاری برابر است با $T_{cache}=k \times T_{download}$. بنابراین کاهش زمان برابر $(N-k) \times T_{download}$ خواهد بود. برای $N=53$ و $k=2$، کش باعث کاهش زمان به اندازهٔ $51 \times T_{download}$ می‌شود.

تفاوت کش مرورگر با کوکی و کش دی‌ان‌اس

بسیاری از کاربران مفاهیم کش مرورگر، کوکی‌ها و کش دی‌ان‌اس را با هم اشتباه می‌گیرند. در حالی که هر سه برای بهبود سرعت یا تجربهٔ کاربری طراحی شده‌اند، اما کاربرد و محل ذخیرهٔ متفاوتی دارند:

  • کش مرورگر: فایل‌های ایستای وب‌سایت (تصاویر، سی‌اس‌اس و غیره) را روی هارددیسک ذخیره می‌کند تا بارگذاری مجدد سریع‌تر شود.
  • کوکی‌ها: اطلاعات کوچکی مانند وضعیت ورود کاربر، تنظیمات زبان و موارد ردیابی را ذخیره می‌کنند. کوکی‌ها معمولاً تاریخ انقضای کوتاه‌تری نسبت به کش دارند و محتوای اصلی سایت را شامل نمی‌شوند.
  • کش دی‌ان‌اس: آدرس‌های اینترنتی (مانند example.com) را به آی‌پی[8] عددی تبدیل می‌کند و این جفت‌ها را ذخیره می‌کند تا در بازدید بعدی نیازی به پرس و جوی مجدد از سرورهای دی‌ان‌اس نباشد.

چالش‌های مفهومی در مدیریت کش

۱. چرا گاهی پس از به‌روزرسانی یک وب‌سایت، هنوز نسخهٔ قدیمی آن را می‌بینم؟

مرورگر شما همچنان از نسخهٔ کش‌شدهٔ قدیمی استفاده می‌کند، زیرا سرآیند تاریخ انقضای آن فایل هنوز منقضی نشده است. راه حل: با فشردن کلیدهای Ctrl+F5 (در ویندوز) یا Cmd+Shift+R (در مک) می‌توانید مرورگر را مجبور کنید همهٔ فایل‌ها را دوباره از سرور دریافت کند (بارگذاری اجباری بدون کش).

۲. آیا پاک کردن کش باعث حذف رمزهای عبور ذخیره‌شده یا تاریخچه می‌شود؟

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

۳. اگر کش بیش از حد بزرگ شود، آیا رایانه را کند می‌کند؟

بله، در درازمدت. کش بسیار بزرگ می‌تواند فضای هارددیسک را اشغال کند و حتی فرآیند جستجوی فایل‌های درون کش را برای مرورگر زمان‌بر کند. مرورگرهای مدرن به طور خودکار اندازهٔ کش را محدود می‌کنند (معمولاً بین ۵۰ تا ۵۰۰ مگابایت). اما اگر احساس می‌کنید مرورگر کند شده است، می‌توانید به صورت دستی کش را از طریق تنظیمات مرورگر پاک کنید.

نحوه مشاهده و پاک کردن کش در مرورگرهای رایج

برای مدیریت کش، هر مرورگر مسیر مخصوص به خود را دارد. در ادامه گام‌های سریع برای سه مرورگر پرکاربرد آورده شده است:

  • گوگل کروم: منوی سه نقطه ← تنظیمات ← حریم خصوصی و امنیت ← پاک کردن داده‌های مرور ← محدوده زمانی «تمام زمان» ← تیک گزینه «تصاویر و فایل‌های ذخیره‌شده در کش» را بزنید ← پاک کردن داده.
  • موزیلا فایرفاکس: منوی سه خط ← تنظیمات ← حریم خصوصی و امنیت ← کوکی‌ها و داده‌های سایت ← پاک کردن داده ← تیک گزینه «محتوای وب ذخیره‌شده در کش» ← پاک کردن.
  • مایکروسافت اج: منوی سه نقطه ← تنظیمات ← حریم خصوصی، جستجو و خدمات ← پاک کردن داده‌های مرور ← انتخاب «تمام زمان» ← تیک گزینه «تصاویر و فایل‌های ذخیره‌شده در کش» ← پاک کردن.
توصیهٔ بهینه: نیازی نیست هر روز کش را پاک کنید. کش کردن هر یک یا دو هفته یک بار برای رفع مشکلات نمایشی کافی است. برای سایت‌هایی که هر روز به آنها سر می‌زنید (مانند شبکه‌های اجتماعی)، کش را نگه دارید تا سرعت بالایی داشته باشید.
نکات پایانی — حافظهٔ پنهان مرورگر یکی از ابزارهای کلیدی برای افزایش سرعت وب‌گردی و کاهش مصرف اینترنت است. با درک تفاوت کش با کوکی و کش دی‌ان‌اس، و یادگیری روش پاک کردن به‌موقع آن، می‌توانید هم از مزایای سرعت بهره‌مند شوید و هم از مشکلات ناشی از نمایش نسخه‌های قدیمی سایت جلوگیری کنید. به یاد داشته باشید که مرورگرها به طور پیش‌فرض کش را بهینه مدیریت می‌کنند، اما آگاهی از نحوهٔ دخالت دستی در مواقع خاص، یک مهارت مفید در عصر دیجیتال است.

پاورقی‌ها

[1] کش (Cache): حافظهٔ موقت با دسترسی سریع که نسخهٔ کپی‌شده از داده‌های پرتکرار را ذخیره می‌کند. معادل انگلیسی: Cache.

[2] دی‌ان‌اس (DNS): سامانهٔ نام دامنه که نام‌های قابل فهم برای انسان (مانند google.com) را به آدرس‌های عددی آی‌پی تبدیل می‌کند. معادل انگلیسی: Domain Name System.

[3] کوکی (Cookie): قطعه دادهٔ کوچکی که وب‌سایت در مرورگر کاربر ذخیره می‌کند تا وضعیت جلسه یا تنظیمات را به خاطر بسپارد. معادل انگلیسی: Cookie.

[4] سرآیند تاریخ انقضا (Expiration Header): اطلاعاتی در پاسخ سرور که مشخص می‌کند یک فایل کش‌شده تا چه زمانی معتبر است. معادل انگلیسی: Expiration Header.

[5] اچ‌تی‌ام‌ال (HTML): زبان نشانه‌گذاری ابرمتنی، زبان اصلی برای ساخت صفحات وب. معادل انگلیسی: HyperText Markup Language.

[6] ای‌پی‌آی (API): رابط برنامه‌نویسی کاربردی که امکان ارتباط بین نرم‌افزارهای مختلف را فراهم می‌کند. معادل انگلیسی: Application Programming Interface.

[7] سرویس‌کارگر (Service Worker): اسکریپتی که در پس‌زمینه مرورگر اجرا می‌شود و قابلیت‌هایی مانند کش صفحات برای اجرای آفلاین را مدیریت می‌کند. معادل انگلیسی: Service Worker.

[8] آی‌پی (IP): پروتکل اینترنت، آدرس عددی منحصربه‌فرد هر دستگاه متصل به شبکه. معادل انگلیسی: Internet Protocol.