کش

کش سایت یا Web Caching چیست؟

آیا تاکنون وب سایتی را بخاطر زمان بارگیری طولانی ترک کرده اید؟ این یک مشکل بزرگ برای صاحبان وب سایت است. اما نگران نباشید، زیرا راه حل های بسیاری برای این مسئله وجود دارد، که یکی از آنها را در این مقاله خواهیم نوشت. در این مقاله از گروه تبلیغاتی فورسی ، جواب سوال کش سایت چیست را پیدا می کنید و همچنین نحوه استفاده از کش را یاد خواهید گرفت.

کش چیست ؟

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

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

کش

کش سایت چیست؟

کش یا حافظه پنهان وب سایت یک حافظه موقت برای ذخیره سازی اطلاعات است که به عنوان کش http شناخته می شود. زیرا با اولین بازدید از یک سایت یک درخواست http به سمت سرور ارسال می شود و سرور پس از پردازش درخواست و اطلاعات، صفحه سایت را به صورت html نمایش می دهد. در واقع با اولین بارگذاری سایت، اطلاعات استاتیک نظیر صفحات وب (html)، تصاویر و فایل های css و … را در خود ذخیره می کند. این کار موجب می شود که زمان بارگذاری سایت در مراجعات بعدی پایین تر باشد.
به طور ساده تر، زمانیکه بازدیدکننده از سایت بازدید می کند، محتوای سایت به حافظه پنهان سایت منتقل می شود و در مراجعه بعدی، اطلاعات از حافظه پنهان سایت فراخوانی می شود و نیازی نیست که اطلاعات مجدداً از سرور خوانده شود زیرا باعث کندی می شود.

دقت نمایید، زمانی که شما از کش سایت استفاده می کنید، مفهوم آن ذخیره سازی از طرف سرور است. یک نمونه از بهترین افزونه های وردپرس که در حال حاضر عملکرد بسیار خوبی دارد، افزونه WP Rocket می باشد.

کش

کش مرورگر چیست؟

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

کش مرورگر به طور موقت فایل های زیر را ذخیره می کند:

  • صفحات HTML
  • فایل CSS
  • فایل JavaScript
  • تصاویر
  • و انواع دیگر محتوای رسانه ای مشابه
به گفته گوگل، هر مرورگر دارای نوعی حافظه پنهان است و مرورگرهایی از قبیل Chrome، Safari، Firefox و سایر مرورگرهای مشابه، دارای این حافظه ذخیره سازی موقت می باشند و موضوع حائز اهمیت این است که یک وب سایت می تواند با مرورگر کاربر ارتباط برقرار کند، یعنی زمانی که محتوای سایت به روز شود، مرورگر هم کش را به روز کند. ضمن اینکه همانطور که در بالاتر اشاره شد، کاربر می تواند کش را به صورت دستی حذف کند.

کش سرور چیست؟

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

Object caching
ذخیره سازی کوئری های دیتابیس در سمت سرور به منظور بازیابی سریع در بارگذاری های بعدی می باشد.

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

Opcode caching
دستورات و کدهای php اجرا شده در سرور، در یک حافظه پنهان ذخیره می شود تا در دفعات بعد صفحات با سرعت بالاتری اجرا شوند. برای سیستم های کش سرور می توان یک expiry date تنظیم نمود تا ظرفیت سرور پر نشود و موجب کندی و اختلال در سرور نگردد.

کش سایت

مزایای کش کردن صفحات وب :

سوالی که برای بسیاری از افراد پیش می آید این است که ؛ آیا کش کردن صفحات سایت تاثیر مثبتی دارد ؟ زیرا به وسیله کد نویسی بهینه نیز می توان سرعت بارگذاری سایت را افزایش داد . جواب این سوال را می توان بدین شرح توضیح داد .

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

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

حافظه کش اشتراکی یا کش هوشمند چیست ؟

هم اکنون که با این مفهوم که کش (cache) چیست آشنا شدید لازم است کمی چند در رابطه با کش هوشمند نیز اطلاعاتی کسب کنید.

در گذشته برای هر هسته یک حافظه کش مشخص با مقدار ثابت در نظر می‌گرفتند.

به عنوان مثال اگر پردازنده ، هشت عدد هسته داشت هشت عدد حافظه کش با مقدار ثابت در نظر می‌گرفتند مثلا ۶۴ کیلوبایت.

اما مشکل کجاست ؟

مشکل از اینجا شروع شد که اگر در این حالت یکی از هسته ها به حافظه بیشتر از ۶۴ کیلوبایت نیاز داشته باشد باید به سراغ حافظه اصلی یا همان حافظه رم می رفت.

دانشمندان با طراحی کش هوشمند یا اسمارت کش ، مشکل شان را برطرف کردند.

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

مثلاً اگر هسته ۳ نیاز به کش بیشتر داشته باشد و هسته ۱ بیکار باشد ، هسته ۳ می تواند از کش بیشتری استفاده کند.

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

با این انقلاب در کش ها مشکل ما حل می‌شود زیرا در اکثر مواقع دیگر نیازی به سر کشیدن به حافظه رم نیست ، و هسته ها متناسب با نیازشان می توانند از حافظه کش استفاده کنند.

نکته قابل توجه اینجاست که یکی دیگر از مزایای کش هوشمند این است که اگر یک دیتا توسط هسته ۳ به کش آمده باشد و هسته ۴ هم به همان دیتا نیاز داشته باشد دیگر نیاز نیست که هسته ۴ آن دیتا را از رم به کش (cache) بکشد چون همان جا هست و می تواند از آن استفاده کند.

و همانطور که مشخص است این امر بر روی سرعت سایت ما و بالطبع سئو سایت ما تاثیر گذار است.

کش سایت

استفاده از کش کردن درون هاست

این کار به وب سایت هایی که در محیط هاست مدیریت وردپرس اجرا می شوند، اعمال می شود. توصیه ی ما WPEngine،  Flywheel  و Kinsta، است که همگی مکانیسم های بسیار عالی ذخیره سازی را دارا هستند.

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

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

نوشتن کد کارآمد

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

برای مثال، اگر شما در حال نوشتن متا داده برای یک پست هستید و دستور زیر را فراخوانی می کنید:

get_post_meta( $post_id, 'co-author', true );

وردپرس در واقع تمام متا داده ها را برای این پست بازیابی می کند. بنابر این داشتن ۵۰ فراخوانی جداگانه ی  get_post_meta()  برای بازیابی اطلاعات یک پست بی فایده نیست.

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

جمع بندی

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

0 0 دادگاه‌ها
امتیاز مطلب
اشتراک در
اطلاع از
guest
0 دادگاه‌ها
بازخورد (Feedback) های اینلاین
نمایش همه دیدگاه‌ها
0
با نوشتن دیدگاهتان ما را مهمان کنید.x
()
x