حافظه پنهان مرورگر (کش): ذخیرهسازی هوشمند برای سرعت بیشتر
کش مرورگر چیست و چگونه کار میکند؟
وقتی برای اولین بار به یک وبسایت مراجعه میکنید، مرورگر شما بسیاری از فایلهای آن سایت (مانند لوگو، قالببندی، و اسکریپتها) را دانلود کرده و در پوشهای خاص روی هارددیسک یا حافظه اساسدی ذخیره میکند. به این پوشه، «حافظه پنهان مرورگر» میگویند. در بازدیدهای بعدی، مرورگر به جای دانلود دوبارهٔ همهٔ فایلها، ابتدا بررسی میکند که آیا نسخهٔ ذخیرهشدهٔ آنها هنوز معتبر است یا نه. اگر معتبر باشد، فایلها را از کش خوانده و بارگذاری صفحه بسیار سریعتر انجام میشود.
مثالی ساده: تصور کنید کتابخانهای دارید که کتابهای پرمخاطب را روی یک قفسهٔ نزدیک به در ورودی قرار میدهد. دفعهٔ اول که کتابی را میخواهید، باید به انبار اصلی بروید (دانلود از سرور). اما دفعهٔ دوم، آن کتاب را همان دم دست روی قفسهٔ نزدیک پیدا میکنید (کش). این قفسهٔ نزدیک، همان حافظهٔ پنهان مرورگر شماست.
انواع حافظه پنهان در مرورگر
در مرورگرهای مدرن، انواع مختلفی از کش وجود دارد که هر کدام وظیفهٔ خاصی را بر عهده دارند. درک این تفاوتها به مدیریت بهتر وبگردی کمک میکند. جدول زیر مهمترین انواع کش را مقایسه میکند:
| نوع کش | محتوای ذخیرهشده | مدت ماندگاری معمول |
|---|---|---|
| کش منابع ایستا | تصاویر، فایلهای سیاساس، جاوااسکریپت، فونتها | چند روز تا یک سال |
| کش صفحه | محتوای اچتیامال[5] کامل صفحه | چند دقیقه تا چند ساعت |
| کش ایپیآی[6] و پاسخهای سرور | دادههای دریافتی از سرور (مثلاً وضعیت آب و هوا) | چند دقیقه |
| کش سرویسکارگر[7] | منابع برنامههای پیشرو (اجرای آفلاین) | مشخص شده توسط برنامه |
مثال عملی: تفاوت بارگذاری با کش و بدون کش
فرض کنید یک وبسایت خبری دارای ۵۰ تصویر و ۳ فایل سیاساس است. بدون کش، مرورگر برای هر بار بازدید باید همهٔ ۵۳ فایل را دوباره دانلود کند. با فعال بودن کش، در بازدید دوم تنها فایلهایی دانلود میشوند که تغییر کردهاند (مثلاً دو تصویر جدید). این تفاوت در زمان بارگذاری صفحه، به خصوص در اینترنتهای کمسرعت، بسیار چشمگیر است.
تفاوت کش مرورگر با کوکی و کش دیاناس
بسیاری از کاربران مفاهیم کش مرورگر، کوکیها و کش دیاناس را با هم اشتباه میگیرند. در حالی که هر سه برای بهبود سرعت یا تجربهٔ کاربری طراحی شدهاند، اما کاربرد و محل ذخیرهٔ متفاوتی دارند:
- کش مرورگر: فایلهای ایستای وبسایت (تصاویر، سیاساس و غیره) را روی هارددیسک ذخیره میکند تا بارگذاری مجدد سریعتر شود.
- کوکیها: اطلاعات کوچکی مانند وضعیت ورود کاربر، تنظیمات زبان و موارد ردیابی را ذخیره میکنند. کوکیها معمولاً تاریخ انقضای کوتاهتری نسبت به کش دارند و محتوای اصلی سایت را شامل نمیشوند.
- کش دیاناس: آدرسهای اینترنتی (مانند 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.