کش (Caching) وب سایت یکی از مفیدترین فناوری های موجود است. به طور خلاصه، باعث افزایش سرعت سایت ها می شود که این منجر به کسب نمرات بهتر سئو و افزایش رضایت کاربران می شود.
در این مقاله، همه چیز را در مورد اینکه کش وب سایت چیست، چرا انقدر مهم است و چگونه می توان آن را در وردپرس پیاده سازی کرد. خواهیم گفت.
درواقع کش کردن صفحه یکی دیگر از روش هایی است که می تواند به شما کمک کند زمان بارگذاری صفحات وب خود را بهبود بخشیده و در نتیجه وب سایت خود را برای موتورهای جستجو بهینه کنید.
زمان بارگذاری صفحه می تواند به طور قابل توجهی بر تجربه کاربری وب سایت شما و توانایی سایت شما در تبدیل بازدیدکنندگان به خریدار تاثیر بگذارد. در حقیقت، آزمایشات انجام شده در گوگل نشان داد که تفاوت نیم ثانیه در زمان بارگذاری می تواند باعث کاهش 20 درصدی ترافیک وب شود.
برای اطلاعات بیشتر می توانید نحوه اندازه گیری موفقیت تجربه کاربری یک سایت توسط گوگل را مطالعه نمایید.
به همین دلیل، شرکت های موتورهای جستجو زمان بارگذاری صفحه را به عنوان فاکتور مهمی برای تعیین رتبه سایت شما در نتایج جستجو در نظر می گیرند. این بدان معناست که شما باید اقدامات لازم را برای کاهش حجم فایل های تصویری و صفحات خود به عنوان بخشی از استراتژی سئو خود انجام دهید.
Caching یا کش وب سایت چیست؟
فناوری و جزئیات دقیق Caching می تواند بسیار پیچیده باشد اما درواقع بسیار ساده است. اجازه دهید یک مثال بزنم.
اگر از شما بپرسند نتیجه 5*3 چیست، می دانید که پاسخ 15 است. نیازی به محاسبه آن ندارید، این ضرب را آن قدر در زندگی خود انجام داده اید که دیگر نیازی به محاسبه آن ندارید. شما به سادگی نتیجه را بدون نیاز به پردازش ذهنی به خاطر می آورید. خوب، نحوه ذخیره سازی یا Caching نیز به این شکل است.
به طور کلی وب سایت ها صدها، هزاران یا حتی گاهی میلیون ها بار در ماه مشاهده می شوند. به طور معمول، هر بار که یک مرورگر به یک صفحه وب درخواست می دهد، سرور مجبور است یک سری محاسبات پیچیده (و وقت گیر) انجام دهد.
آخرین پست ها را بازیابی می کند، سرصفحه و پاورقی را ایجاد می کند، ابزارک های نوار کناری سایت شما را پیدا می کند و غیره. با این حال، در بسیاری از موارد، نتیجه همه این محاسبات دقیقاً یکسان خواهد بود.
بنابراین، اگر بتوانیم به جای پردازش هر درخواست جداگانه، سرور را وادار کنیم که نتیجه نهایی را به خاطر بسپارد، عالی نخواهد بود؟ این دقیقاً همان کاری است که caching انجام می دهد!
صفحات کش شده چگونه ارائه می شوند؟
فرض کنید شما دارای یک وبلاگ هستید که حافظه پنهان آن فعال است. اولین باری که شخصی از صفحه اصلی شما بازدید می کند، آن صفحه را به روش عادی دریافت می کند. به عبارتی درخواست دریافت می شود، روی سرور پردازش می شود و صفحه وب حاصله برای نمایش به یک فایل HTML تبدیل می شود و به مرورگر وب بازدیدکننده ارسال می شود.
از آنجا که حافظه پنهان فعال است، سرور این فایل HTML را ذخیره می کند، معمولاً در “حافظه دسترسی تصادفی” (یا RAM) آن که بسیار سریع است. دفعه بعد که شما یا هر شخص دیگری صفحه اصلی را مشاهده می کند، سرور نیازی به پردازش و تبدیل به HTML ندارد. در عوض، فایل HTML آماده شده را به مرورگر ارسال می کند.
آیا کش کردن واقعاً موثر است؟
یک وب سایت با کدنویسی خوب ممکن است در عرض دو ثانیه بارگیری شود. (توجه: سرعت بارگذاری وب سایت چیزی است که می توانید به راحتی با استفاده از سرویس رایگان مانند GTMetrix برای خود تست کنید).
آیا این سرعت کافی نیست؟ آیا کش کردن واقعا ارزش دارد؟ پاسخ بله است. با استفاده از هر دو مرورگر و کش کردن سرور، می توانید زمان زیادی را بدست آورید.
با به کارگیری کش، می توانید زمان بارگذاری را به میزان زیادی اصلاح کنید و همه چیز را سریع تر انجام دهید! این نکته را نیز باید در نظر داشت که با پیاده سازی کش ، شما نه تنها وب سایت خود را سریع تر می کنید، بلکه عملکرد بهتری را نیز انجام می دهید و آن را مجهز می کنید تا بار هرگونه افزایش ناگهانی ترافیک را به طور موثرتری تحمل کند.
کش کردن چقدر موثر است؟ طبق مطالعه اخیر YUI، ذخیره مرورگر می تواند سرعت را تا 300% افزایش دهد!
انواع کش
به طور کلی، دو نوع کش وجود دارد: کش سرور و کش مرورگر. کش مرورگر در سمت سرویس گیرنده (کاربر) انجام می شود، در حالی که کش سرور در سرور انجام می شود. بگذارید تفاوت های این دو را بررسی کنیم.
کش سرور
مکانیسم کش سرور به گونه ای است که به جای پردازش هر درخواست، نتایج این درخواست ها را گرفته و آنها را ذخیره می کند. سپس به جای اینکه دوباره این فرایند را برای هر درخواست انجام دهد، نتایج ذخیره شده را ارائه می دهد و همه چیز را بسیار سریع تر می کند.
ممکن است با اصطلاحات “cache object” و “cache full page” برخورد کرده باشید. اینها هر دو روش کش کردن سرور هستند – کش کامل صفحه همان چیزی است که ما در مورد آن صحبت کرده ایم.
حافظه پنهان های شیء فقط بیت ها و قطعاتی از داده ها را ذخیره می کند، بر خلاف یک صفحه کامل. این می تواند در کدنویسی شما و هنگام ذخیره نتیجه عملیات پیچیده مانند ایجاد منوی ناوبری مفید باشد.
کش مرورگر
هنگام بازدید از یک وب سایت، نیاز به بازیابی محتوای صفحه ای که مشاهده می کنید نیست، بلکه به منابع زیادی مانند فایل های جاوا اسکریپت، برگه ها، فونت و غیره نیاز دارید که مرورگر شما علاوه بر محتوا آنها دانلود می کند.
کش مرورگر به مرورگر شما امکان می دهد این فایل ها را برای مدتی ذخیره کند، بنابراین نیازی به بازیابی آنها در هر بار مراجعه به سایت نیست.
به عنوان مثال، برای اولین بار که از سایت دیدن می کنید (momtazseo.com)، مجموعه ای از منابع را دریافت می کنید که مرورگر شما بلافاصله آنها را ذخیره می کند. بارگیری بار اول چند ثانیه طول می کشد، اما دفعه بعد که از آن دیدن می کنید، کاهش قابل ملاحظه ای در زمان بارگیری مشاهده خواهید کرد (در واقع به اندازه یک ثانیه یا بیشتر).
کش کردن در وردپرس
در مورد کش وب سایت در وردپرس باید سه نکته را بدانید: نوشتن کد کارآمد، استفاده از افزونه های کش کردن و استفاده از کش داخلی هاست.
استفاده از افزونه های کش وردپرس
یک نکته بسیار مهم که باید آن را تاکید کنم این است که هرگز از بیش از یک افزونه کش استفاده نکنید. زیرا استفاده بیش از یک افزونه، نه تنها به افزایش سرعت سایت شما کمک نمی کند، بلکه سایت شما را بسیار کند تر کرده و فرآیند آن را خراب می کند.
همیشه از یک افزونه کش جداگانه استفاده کنید. در صورتی که به درستی پیکربندی شود، به سرعت سایت شما بسیار کمک می کند. بهترین افزونه های کش کردن عبارت اند از:
- WP Rocket
- W3 Total Cache
- WP Super Cache هستند.
استفاده از کش کردن داخلی هاست
این مورد در وب سایت هایی که در محیط های هاست مدیریت وردپرس، اجرا می شوند صدق می کند. ما می توانیم WPEngine ، Flywheel و Kinsta را پیشنهاد کنیم که همه آنها دارای مکانیزم های ذخیره سازی عالی (و سایر خدمات) هستند که آنها را ارزشمند می کند.
سیستم های کش کردن که توسط این شرکت های هاست استفاده می شوند در سطح بسیار پایین تری نسبت به افزونه های وردپرس اجرا می شوند، به این معنی که بسیار موثرتر هستند. علاوه بر این، آنها همچنین به طور خاص برای کار با وردپرس و محیط هاست مورد استفاده تنظیم شده اند که این امر کاربرد آنها را بیشتر می کند.
اگر از هاست مدیریت وردپرس استفاده می کنید، توصیه می کنم از هیچ افزونه کش کردن دیگری استفاده نکنید. در حقیقت، بسیاری از این هاست ها حتی استفاده از برخی از افزونه های کش کردن را نیز ممنوع می کنند، زیرا به احتمال زیاد با سیستم های کش کردن خاصی که قبلاً پیاده سازی کرده اند تداخل ایجاد می کند.
نوشتن کد کارآمد
این قسمت مربوط به برنامه نویسان است. در اینجا وارد جزئیات نمی شویم، اما اولین چیزی که باید به عنوان یک برنامه نویس بدان توجه کنید نحوه عملکرد داخلی وردپرس است.
به عنوان مثال، اگر برای یک پست متا داده در حال نوشتن هستید و کد زیر را استفاده می کنید:
get_post_meta($post_id,'co-author',true);
وردپرس در واقع تمام فراداده های آن پست را بازیابی می کند. بنابراین داشتن 50 فراخوانی get_post_meta()
جداگانه برای بازیابی داده های یک پست، بیهوده نیست.
نکته بعدی که باید به آن توجه کنید، نحوه استفاده صحیح از transients در وردپرس است. transients ها نوعی روش ذخیره شی با تاریخ انقضا هستند. می توانید از آنها برای ذخیره کردن پاورقی یا سربرگ خود استفاده کنید که در واقع با گذشت زمان تغییر نمی کند، مگر در شرایط بسیار خاص، در این مرحله شما فقط کش را خالی می کنید.
سخن آخر
کش کردن یا Caching یک فناوری است که سرعت وب سایت شما را افزایش می دهد. زمانی که به درستی استفاده شود، نه تنها زمان بارگذاری به طور قابل توجهی افزایش می یابد، بلکه بار سرور شما را نیز کاهش می دهد.
امیدوارم این مقاله برایتان مفید باشد. موفق و پیروز باشید.
منبع: winningwp – seositecheckup
دیدگاهی بنویسید