حافظه کش (Cache) یا حافظه پنهان پردازنده چیست؟
درک نحوه کارکرد موتورهای جستجوی گوگل و نمایه سازی، قسمتی اساسی برای به دست آوردن بهترین رتبه در سئو است.متأسفانه، این چیزی است که بسیاری از دارندگان وب سایت به طور کامل آن را درک نمیکنند.
گوگل به طور مداوم الگوریتمهای جستجوی خود را تغییر میدهد.در این راستا موارد بسیاری وجود دارد که حتی بهترین شرکتهای سئو نیز نمیدانند.
کش یا حافظه پنهان یکی از این عناصر است. پس برای به دست آوردن رتبهای خوب در گوگل، بسیار مهم است که بدانید کش دقیقاً چیست و ارتباط آن با جستجوی آنلاین چه میباشد.
حافظه پنهان یا کش چیست؟
کش در سادهترین شکل ممکن یک عکس فوری از یک صفحه وب است که گوگل بعد از فهرست کردن صفحه آن را ایجاد و ذخیره میکند.وقتی صفحات وب ظاهر میشوند، در فهرست نمایههای Google دستهبندی شده و ثبت میشوند.
اما هنگامی که صفحه مورد نظر لود میشود، هر چند میلیون صفحه وب را به طور فعال در جستجو گوگل قرار نمیگیرد. بلکه گوگل یک عکس فوری از آن صفحه میگیرد زیرا دسترسی به آن آسانتر خواهد بود.
وقتی ایندکسرها صفحه درخواستی را تعیین میکنند، سپس صفحه اصلی از حافظه پنهان آن را نشان میدهد.به همین دلیل طراحی وب که باعث نمایهسازی سریعتر میشود بسیار حائز اهمیت است.
علاوه بر این، هنگامی که یک صفحه وب تغییر میکند، باید مجدداً ایندکس شود و یک کش جدید در ازای نسخه قدیمیتر ذخیره میشود.بنابراین جدیدترین و مرتبطترین صفحه همان صفحهای است که توسط کاربر مشاهده میشود.
از کجا میتوان کش را مشاهده کرد؟
از نظر فنی، حافظه پنهان در دو روش موجود است. به عنوان تصویری از صفحه وب و به عنوان نسخهی متنی از محتوای یک صفحه.
با جستجو در Google و بررسی نتایج جستجو میتوانید یکی از این موارد را مشاهده کنید.
چرا کش برای سئو سایت مهم است؟
نسخه متنی حافظه پنهان صفحه برای SEO از اهمیت بالایی برخوردار است. دلیل آن هم این بوده که نسخه کم حجم محتوای خالص سایت را ارائه میدهد و آن را از فیلتر طراحی، پروندههای رسانهای و سایر موارد میگذارند.
از این موضوع به منظور نشان دادن کلمات کلیدی محتوا و عناصر بیمعنی در جستجو استفاده میشود.نسخه متنی همان چیزی است که Google هنگام نمایهسازی میخواند. بنابراین محتوا باید با در نظر گرفتن این نکته و استفاده از کلمات کلیدی به سودمندترین روشها ایجاد شود.
کلمات کلیدی Alt-text در بعضی مواقع کاربردی هستند. اما اگر متن صفحه موجود در کش حاوی محتوای با کیفیت کافی نباشد، حتی با استفاده از کلمات کلیدی مناسب و نمایه سازها نیز ارتباط کافی برای اولویت صفحه پیدا نمیکنید.
آیا باید برای کش شدن سایت کاری انجام داد؟
پاسخ این سؤال در واقع بسیار ساده است. برای این کار آخرین تاریخ حافظه پنهان شده را بررسی کنید.
اگر ۲۴ تا ۴۸ ساعت از زمان تغییر هر وب سایت بگذرد، نشانه خوبی است که Google صفحه را مرتبط و به اندازه کافی مهم میداند که به سرعت کش شود.
به معنای اهمیت بیشتر این صفحه، پایینتر از لیست است و صفحات دیگر در اولویت قرار دارند. برای این کار توصیه میشود که از بهترین شرکت یا فرد متخصص در زمینه سئو برای بهبود مطالب مرتبط با حافظه پنهان و رتبهبندی کمک بگیرید.
درست زمانی که به نظر میرسید چیز دیگری برای بهتر شدن در زمینه سئو وجود ندارد، حافظه پنهان صفحه یا موتورهای جستجوگر Google به ما یادآوری میکند که همیشه روشهای دیگری برای بهبود بخشیدن به وضعیت سئو وجود دارد.
درک اهمیت حافظه پنهان، و اینکه چگونه میتواند بهینهسازی سئو را بهبود بخشد، برای کسانی که وب سایت دارند یا طراح وبسایت هستند، دانشی اساسی است.
کش نوعی حافظه کمکی است که از مزایای آن بازیابی با سرعت بالا و ظرفیت ذخیرهسازی نسبتاً کم میباشد.
کش در واقع بین واحد پردازش مرکزی (CPU) و حافظه اصلی قرار دارد. حافظه پنهان با ذخیره موقت برخی از دادهها و در صورت لزوم دسترسی سریع به آنها، از جلوگیری دسترسی به هارد دیسک یا محاسبات مجدد پیچیده جلوگیری میکند.
حافظه پنهان یک نسخه از درخواست فعلی را ذخیره میکند و آن را به نوعی آنچه در رسانه درخواست شده وجود دارد، منعکس میکند.
انواع سطح در کش
برای سریعتر شدن سیستم قسمتهایی که اغلب از آن استفاده میشود، محاسبه شده و در حافظه پنهان ذخیره میشوند و بنابراین عملکرد با سرعت بیشتری در دسترس قرار میگیرد.
حافظه نهان به عنوان یک بافر بین حافظه اصلی و هارد دیسک عمل میکند و اجازه میدهد موضوعات خاص با کارایی بیشتری انجام شود.علاوه بر این، دادههایی که به زودی مورد نیاز خواهند بود، میتوانند با حافظه کوتاه در کش بارگیری شده و آماده استفاده شوند.
حافظه پنهان دارای سطحبندی خاص خود است و در سه مرحله قرار دارد.
• کش سطح ۰ (L۰) دارای ظرفیت ذخیرهسازی کمی میباشد. این سطح از چند بایت تشکیل شده است که جریان داده را از ابتدا در واحد مرکزی جدا میکند.
• کش سطحL۱ و L۲ داخلی هستند.
• در حالی که کش سطح ۳ (L۳) یک حافظه جداگانه در مادربرد است.
هر سطحی از حافظه پنهان میتواند بازدیدها را از بین ببرد یا از دست بدهد.اگر درخواست داده کاربر با آنچه در حال حاضر در حافظه پنهان است یکسان باشد، این در قالب یک شوک وارد میشود و با استفاده از حافظه پنهان میتوان روند فعلی را مدیریت کرد.
در غیر اینصورت این یک خطا است و در شرایط خاص نیاز به دسترسی به هارد دارد.
زمینههای کاربرد کش
کش علاوه بر شناخته شدهترین حافظههای در سطح جهان، برای درایوهای فلاپی، CD و DVD نیز وجود دارد.این دستگاههای ذخیرهسازی از فناوری حافظه متعارفی برای ذخیره موقت دادهها استفاده میکنند.
با توجه به برنامههای وب، حافظه پنهان یک حافظه بافر است که به طور موقت دادهها را برای یک وب سایت، فرمها یا رسانههای موجود مانند فیلمها و تصاویر ذخیره میکند.
بنابراین هنگام جستجوی مجدد منبع، نیازی به بارگیری مجدد این دادهها نیست. چنین حافظههای پنهانی بخشی از نرمافزار هستند و از منابع خاصی استفاده میکنند که بدون در نظر گرفتن این نرمافزار کار خود را انجام میدهد.
حافظه پنهان مرورگر اطلاعاتی را که کاربر قبلاً وارد شده یا سرور در دسترس قرار میدهد، مانند فرمها یا فیلمها را بارگیری میکند.
از چنین دادههایی به عنوان پروندههای موقت نیز یاد میشود زیرا فقط به طور موقت در حافظه پنهان هستند. کوکیها و دادههای کاربر مانند رمزهای عبور نیز در کش ذخیره میشوند.
اگر میخواهید حافظه پنهان را پاک کنید، دستورالعملهای مناسبی برای هر مرورگر وجود دارد که در مقاله کوکی چیست به آن پرداخته ایم.
دو دلیل اصلی که از کش استفاده میشود
بهبود سرعت
یکی از دلایلی که باعث محبوبیت کش شده است، تغییر وضعیت در عملکرد و بهبود سرعت بارگیری صفحه است.
کاهش ترافیک شبکه
حافظه پنهان میزان پهنای باند مورد استفاده شده مشتری را کاهش میدهد. اگر مشتری هزینه ترافیک را پرداخت کند، این کار سبب صرفه جویی شده و پهنای باند مورد نیاز وی را کمتر و قابل کنترل نگه میدارد.
آموزش فعالسازی کش
حافظه پنهان با طبقهبندی منابع خاصی از صفحه از نظر میزان تغییر یا تکرار آنها به کار میرود.به عنوان مثال، لوگو سایت شما معمولا تغییر نمیکند، اما ممکن است اسکریپتهای سایت شما هر چند روز یکبار تغییر کند.
برای شما و کاربرانتان بهتر است که تعیین کنید که کدام نوع از محتوای شما دارای استاتیک بیشتری هستند و کدام یک پویاتر میباشند.
سرصفحههای کش
دو نوع اصلی حافظه پنهان یعنی نوع کنترل کش و نوع منقضی شده آن، ویژگیهای حافظه پنهان را برای تعریف میکنند.به طور معمول، نوع کنترل حافظه پنهان روشی مدرن و انعطاف پذیرتر از نوع منقضی شده در نظر گرفته میشود. اما هر دو عنوان میتوانند به طور همزمان استفاده شوند.
کنترل حافظه نهان
شما میتوانید کنترل حافظه پنهان را با گزینههای مختلف در یک لیست جداگانه با ویرگول فعال کنید.کنترل حافظه پنهان دارای چندین گزینه است که غالباً به آنها دستورالعمل نیز گفته میشود و میتوان آنها را تنظیم کرد.
با کنترل کش میتوان به طور خاص، نحوه رسیدگی به درخواستهای حافظه پنهان را تعیین کرد. در ادامه انواع کنترل کش را بررسی میکنیم:
no-cache
تا حدودی از نام آن میتوان به این پی برد که این مدل محتوا میتواند پنهان شود، اما در این صورت، قبل از ارائه به مشتری، باید بر روی هر درخواست مجدداً اعتبارسنجی به عمل آید.
no-store
این نوع نشان میدهد که در واقع محتوا به هیچ وجه توسط حافظه پنهان اصلی یا متوسط قابل ذخیره نیست. این مدل گزینه خوبی برای منابعی است که حاوی دادههای حساس هستند.
Public
نوع پابلیک کنترل حافظه پنهان، نشان میدهد که محتوا میتواند توسط مرورگر و توسط هر کش میانی پنهان شود.
همچنین مدل Public تنظیم خصوصی پیش فرض را برای درخواستهایی که از احراز هویت HTTP استفاده میکنند، لغو میکند. مدل عمومی کنترل کش دقیقا عکس مدل خصوصی (Private) است.
Private
مدل خصوصی، محتوایی را که توسط مرورگر کاربر ذخیره شده، اما توسط هیچ حافظه پنهانی ذخیره نمیشود را تعیین میکند.
مدل خصوصی اغلب برای دادههای خاص کاربر استفاده میشود ولی حساسیت خاصی ندارد.
max-age
این نوع نیز حداکثر زمانی را که ممکن است محتوای حافظه پنهان شود قبل از اعتبارسنجی مجدد یا بارگیری مجدد آن از سرور اصلی، تعیین میکند.
این گزینه عموماً جایگزین سرصفحه منقضی شده میشود و ارزش آن را میگیرد.
حافظه نهان منقضی شده
با تعیین زمان انقضا یا انقضا برای برخی از انواع پروندهها، میتوانید حافظه پنهان را فعال کنید.با این کار به مرورگرها میگویید که قبل از درخواست نسخه جدید از سرور، چه مدت از منبع ذخیره شده استفاده کنند.
سرصفحه منقضی شده در آینده زمانی را برای انقضا محتوا تعیین میکند. پس از آن مرحله، درخواستها برای محتوا باید به سرور اصلی با عنوانی جدیدتر و انعطافپذیرتر برگردند.
انواع حافظه پنهان وب
حافظه پنهان مرورگر
اگر تاریخچه را تنظیمات مرورگر وب خود (مانند Internet Explorer، Safari یا Mozilla) بررسی کنید، احتمالاً متوجه تنظیمات «کش» خواهید شد.با این کار میتوانید بخشی از حافظه پنهان و هارد رایانه خود را که توسط مرورگر در آن جا ذخیره کرده است را مشاهده کنید.
حافظه پنهان مرورگر مطابق با قوانین نسبتاً ساده کار میکند. این گزینه برای اطمینان از بروز بودن منابع بررسی میشود.این Cache مخصوصاً زمانی مفید است که کاربران دکمه «بازگشت» را بزنند یا روی لینکهای دیگر کلیک کنند تا وارد صفحهای دیگر شوند.
پروکسیهای ذخیره شده
پروکسیهای وب نیز بر اساس Cache اما در مقیاس بسیار بزرگتر کار میکنند. پروکسیها به همین شیوه به صدها یا هزاران کاربر خدمات میدهند.
شرکتهای بزرگ و ISP اغلب آنها را روی فایروال یا به عنوان دستگاههای مستقل تنظیم میکنند.
آیا وجود حافظه پنهان مرورگر کاربردی است؟
شاید با همه تعاریف و اوصاف این جمله کمی نا امید کننده باشد اما، کش وب یکی از نادرستترین فن آوریهای موجود در اینترنت است.
• مدیران وب اکثرا از ترس از دست دادن کنترل سایت خود را دارند. زیرا Cache پنهان پراکسی میتواند کاربران خود را از وبمستران پنهان کند. در نتیجه برای مشاهده و ارزیابی سایت به مشکل خواهیم خورد و نمیدانیم چه کسی از سایت استفاده میکند.
• نگرانی دیگر این است که حافظه پنهان میتواند محتوای قدیمی ارائه دهد. با این حال، این آموزش میتواند نحوه پیکربندی سرور خود را برای کنترل نحوه ذخیرهسازی محتوا، به شما نشان دهد.
• از طرف دیگر، اگر سایت خود را به خوبی برنامه ریزی کنید، حافظه پنهان میتواند به بارگیری سریعتر وب سایت شما کمک کند. با این کار توافق و وجه تمایز خاصی را در اختیار مخاطب قرار میدهید.
نحوه کارکرد حافظه پنهان وب
همه حافظههای پنهان، مجموعهای از قوانین را دارند که برای ارائه در صورت موجود بودن، از آنها استفاده میکنند.برخی از این قوانین در پروتکلها (HTTP ۱.۰ و ۱٫۱) بررسی شده و برخی دیگر توسط سرپرست حافظه پنهان (یا کاربر حافظه پنهان مرورگر یا مدیر پروکسی) تنظیم شده اند.
به طور کلی، این متداولترین قوانینی است که توسط Cache رعایت میشود:
قوانین حافظه پنهان
• اگر سرصفحههای ریسپاند به حافظه پنهان دستور دهند که مطلب را نگه ندارد، حافظه پنهان چنین نخواهد کرد.
• اگر حتی درخواست احراز هویت (مانند HTTPS) ایمن هم باشد، توسط حافظه پنهان مشترک ذخیره نمیشود.
• حافظه پنهان جدید بدون بررسی با سرور مبدا، اطلاعات را برای مشتری ارسال میکند.
• اگر حافظه پنهان اخیراً موردی را به تازگی و مجددا مشاهده کند، مسلما مدتها قبل آن را اصلاح کرده است.
• نمایههای تازه بدون بررسی با سرور مبدا، مستقیماً از حافظه پنهان ارائه میشوند.
نکاتی برای ساخت سایت با آگاهی از کش
برای دوستانهسازی سایت خود مواردی در این قسمت توضیح داده میشوند که با بهرهگیری از آن، بهترین کیفیت را خواهید داشت.
۱. از URLها به طور مداوم استفاده کنید
این قانون طلایی ذخیرهسازی است. اگر محتوای یکسانی را در صفحات مختلف، به کاربران مختلف یا سایتهای مختلف ارائه میدهید، باید از همان URL استفاده کنید.
این سادهترین و موثرترین راه برای ایجاد حافظه پنهان در سایت است. به عنوان مثال، اگر یک بار از «/index. html» در HTML خود به عنوان مرجع استفاده میکنید، همیشه از این روش استفاده کنید.
از مجموعه مشترکی از تصاویر و سایر عناصر استفاده کنید و از مکانهای مختلف به آنها لینک دهید.با استفاده از سرصفحه Cache-Control: max-age مقدار زیادی از حافظه پنهان را در تصاویر و صفحاتی ذخیره کنید که اغلب تغییر نمیکنند.
با تعیین حداکثر سن مناسب یا زمان انقضا، حافظه پنهان را مجبور به شناسایی صفحات به طور مرتب و به روز شده کنید.اگر منبعی (به ویژه یک فایل قابل بارگیری) تغییر کرد، نام آن را نیز تغییر دهید.
۲. از کوکیها به درستی استفاده کنید
ذخیره کوکیها دشوار است و در بیشتر مواقع به آنها نیازی نیست. اگر باید از کوکی استفاده کنید، استفاده از آن را به صفحات پویا محدود کنید.
۳. صفحات خود را با REDbot بررسی کنید
این کار میتواند به شما کمک کند بسیاری از مفاهیم موجود در این آموزش را اعمال کنید و کار را تا حد بسیاری برای شما ساده خواهد کرد.
جمعبندی و نتیجه گیری
حافظه پنهان یا کش همانطور که از نامش پیدا است نوعی از انواع حافظهها است. در سادهترین شکل ممکن میتوان آن را در تاریخچه جست و جوی مرورگر یافت.
کش در عین داشتن مزایا بسیار، دارای معایبی نیز میباشد که وب مستران از آن هراس دارند. با بهرهگیری از نکاتی که در این مقاله گفته شد میتوانید وضعیت وبسایت و سیستم خود را کاملا بهبود بخشید و تجربه متفاوت در زمینه وب داشته باشید.
فعالسازی کش روی سرعت سایت تاثیر داره؟ چون اخه بخواد دیتا رو سیستم خوب کاربر کش بشه اونجوری فکر نکنم عملی باشه!