بهینه سازی سایت برای Cache Invalidation Strategies

بهترین روش‌های Caching در وب راکت

نگهداری چنین سروری با قابلیت دسترسی بالا می‌تواند بسیار پرهزینه باشد. این مقاله به شما کمک می کند تا درک کنید چرا راه اندازی کشینگ برای وبسایت‌ها ضروری است و شما را از مشکلات رایج آگاه می‌کند. با گزینه Export می‌توانید تنظیمات فعلی Litespeed را در قالب فایل خروجی بگیرید و دانلود کنید. همچنین با Import فایل تنظیمات ورودی را بارگذاری و جایگزین تنظیمات فعلی کنید. شما به بخش Lazy Load Image Excludes پلاگین لایت اسپید نیاز چندانی نخواهید داشت.

گزینه Litespeed Cache Edit .htaccess برای افرادی با تخصص فنی کافی است. بنابراین اگر در این کار دانش و تجربه لازم را ندارید به این بخش کاری نداشته باشید. تنظیمات عمومی خزنده را از بخش Crawler Cron فعال کنید و مقادیر را به حالت پیش‌فرض باقی بگذارید. در این بخش اختیاراتی درباره تعیین حداکثر تعداد بازبینی‌ها خواهید داشت. می‌توانید تعداد آخرین ویرایش‌ها را بین صفر تا ۱۰۰ مشخص کنید؛ تا هنگام پاک‌کردن ویرایش‌ها حفظ شوند.

Varnish Cache یک سیستم کشینگ HTTP است که به‌صورت اختصاصی برای افزایش سرعت وب‌سایت‌ها طراحی شده است. این ابزار درخواست‌های ورودی را پردازش کرده و پاسخ‌های ذخیره‌شده را مستقیماً از حافظه کش ارسال می‌کند، بدون اینکه نیازی به درخواست مجدد به سرور باشد. ممکن است در وهله اول بهینه کردن سرعت لود سایت برای شما چالش برانگیز باشد ، اما تأثیرات مثبتی بر عملکرد کلی سایت شما خواهد داشت. در این مقاله ما راه کارهایی برای کاهش زمان بارگذاری سایت و افزایش سرعت لود سایت ارائه کردیم که شما می توانید با امتحان کردن این روش ها ، به نتیجه مطلوبی برسید. سربرگ Vary به سرورها کمک می‌کند تا تصمیم بگیرند که چه نسخه‌ای از یک منبع را برای کش کردن استفاده کنند. برای مثال، ممکن است یک صفحه HTML فشرده برای کاربرانی که از فشرده‌سازی gzip استفاده می‌کنند ذخیره شود و نسخه‌ای غیر فشرده برای دیگر کاربران.

اگر زمان بارگذاری صفحه‌های سایت شما بیش از ۳ ثانیه باشد، باید انتظار ازدست‎‌دادن دست کم نیمی از بازدیدکننده‌ها را داشته باشید. به عنوان مثال اگر وبسایت شما در ابتدا با محتوای ثابت شروع به کار کند، تاریخ انقضا هدرهای حافظه کش به تاریخ‌های بسیار دور تنظیم می‌شود. با این حال با پیاده سازی‌های جدید اگر محتوایی وجود داشته باشد که بیشتر تغییر می‌کند، تنظیمات حافظه کش نیز باید با TTLهای پایین‌تر اصلاح شود تا عناصر تازه را بازیابی کند. در صورت بروز چنین اتفاقی، صرف این همه تلاش برای بهینه سازی صفحه اصلی نتایج مورد انتظار را به شما نمی‌دهد. بنابراین مهم است که استراتژی‌های کشینگ برای کل سایت یا حداقل تمام صفحات مهمی که به کاربر کمک می‌کند تا خرید کند، در نظر گرفته شوند. دلیل دیگری سرعت بارگذاری صفحه این است که نام تجاری شما می تواند در ذهن مصرف کنندگان تأثیر بگذارد.

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

در برخی مواقع، اگر کش سرورها یا مرورگرها به درستی با سرور اصلی هماهنگ نشوند، ممکن است نسخه‌های متفاوتی از محتوا به کاربران نمایش داده شود. به یاد داشته باشید پس از تنظیم TTL، بر حافظه کش مرورگر کنترل دارید. بنابراین شاید لازم باشد فرکانس انتشار را نیز در نظر بگیرید و اطمینان حاصل کنید که صفحات می‌توانند از نسخه صحیح assetها (CSS ، JS و ...) استفاده کنند. در عمل بسیاری از استراتژی‌های کشینگ وجود دارد که می‌توانید از آنها استفاده کنید. یکی از این موارد استراتژی بارگیری تنبل است که زمان بارگیری صفحه را بهبود می‌بخشد و فقط در صورت لزوم داده‌ها را در حافظه کش بارگیری می‌کند. CDN (Content Delivery Network) یا شبکه توزیع محتوا می تواند به شما در رفع این مشکلات کمک کند.

برای افراد متخصص امکانات این قسمت شامل تنظیم کوکی‌های ورود به سایت، بهبود سازگاری HTTP/HTTPS و فعال‌کردن کلیک فوری می‌شود. گزینه‌های دیگری هم در این قسمت هست که جز تنظیمات پیشرفته‌تر پلاگین به شمار می‌آیند. این ویژگی به‌طور خودکار فایل‌های HTML، CSS، و JavaScript را فشرده می‌کند. همانطور که دیدیم، حافظه کش مزایای زیادی به برنامه‌های ما می‌بخشد. علاوه بر این از آنجا که HTML معمولا یک بار در سشن کاربر بارگیری می‌شود، تأثیرش بر عملکرد خیلی ناچیز است.

با یک کلیک می‌توانید صفحه اول، صفحات سایت، خطای ۴۰۳، خطای ۴۰۴، خطای ۵۰۰، تمام LSCache، تمام حافظه‌های CSS/JS و کش گراواتار را پاک کنید. علاوه‌براین می‌توانید به پلاگین اجازه دهید انواع فایل‌ها را با URL حذف کند. در صورتی که سایت خود را مخصوص موبایل طراحی کرده‌اید و از AMP استفاده می‌کنید، می‌توانید گزینه کش موبایل را فعال کنید. با این کار زمانی که کاربر برای بار دوم به سایت می‌آید بدون اجرای کدهای PHP و دستورات ازپیش‌هندل‌شده فایل موجود در حافظه به نمایش درمی‌آید. بدیهی است کاهش TTFB یکی از بهترین راه‌های بهبود عملکرد کلی سایت و خلق تجربه کاربری بهتر است. کش‌کردن سایت به سرور اجازه می‌دهد تا هر بار که بازدیدکننده صفحه‌ای را بارگذاری می‌کند، منابع کمتری درگیر شود.

اگر بارگیری صفحات وب شما بیش از حد طول بکشد یا مشکلی در طول فرآیند لود رخ دهد ، می تواند شما را غیرحرفه ای و وب سایت شما را غیرقابل اعتماد جلوه دهد. منظور از بهینه سازی فایل‌های HTML, CSS و JS فشرده سازی و کاهش حجم آن‌هاست. با حذف فاصله‌های اضافی، خطوط خالی و کامنت‌ها و همچنین ترکیب فایل‌های HTML, CSS و JS می‌توان سرعت سایت را افزایش داد. ترکیب این فایل ها با ابزارهایی مثل Grunt، Gulp  و  Webpack قابل انجام است. فشرده سازی فایل‌ها را هم نیز می‌توان با استفاده از ابزارهایی مثل Gzip انجام داد.

در این پست از وب‌سایت لیموهاست با آموزش بهینه‌سازی سایت با پلاگین litespeed cache تلاش کردیم شما را در مسیر رسیدن به این موفقیت همراهی کنیم. تیم متخصص پشتیبانی لیموهاست در تمام لحظات روز، ماه و سال آمادگی پاسخگویی به پرسش‌های شما را دارد. این ابزار اجازه از پیش‌فرستادن فایل‌های CSS داخلی به مرورگر قبل از درخواست را می‌دهد. پیش از فعالسازی مطمئن شوید هاستینگ ارائه‌دهنده سرویس به شما از  HTTP/2 پشتیبانی می‌کند. با CSS Minify نسخه کوچک‌شده CSS، که  از نسخه عمومی آن بهتر است، اجرا می‌شود.

با تنظیمات این بخش می‌توانید به کش مرورگر اجازه دهید فایل‌های ثابت را برای مدتی در مرورگر ذخیره کند. همچنین می‌توانید TTL حافظه پنهان مرورگر را با حداقل ۳۱ ثانیه تنظیم کنید تا فایل‌ها را قبل از انقضا در حافظه پنهان مرورگر ذخیره کند. کاربرد تنظیمات ESI(Edge Side Includes) نمایش صفحاتی از حافظه پنهان برای کاربرانی است که قبلاً وارد سیستم شده‌اند. از این بخش می‌توانید ESI، نوار مدیریت کش و فرم نظر کش را فعال کنید. اگر کاربر بار دیگر قصد بازدید از سایت شما را داشته باشد برخی از منابع در حافظه داخلی دستگاه هستند. در نتیجه بارگذاری سایت و استخراج اطلاعات از وب‌سرور سریع‌تر انجام می‌شود.

این سربرگ تاریخی را تعیین می‌کند که بعد از آن کش موجود منقضی شده و مرورگر باید برای دریافت نسخه جدیدی از داده‌ها درخواست بفرستد. با این حال، Cache-Control امروزه بیشتر استفاده می‌شود و Expires کمتر مورد توجه قرار می‌گیرد. در این روش caching سرور می تواند تاریخ آخرین اصلاح مربوطه را با عنوان Last-modified همراه فایل برای مرورگر ارسال کند. بنابراین حتی اگر صفحه اصلی شما خیلی سریع بارگیری شود اما صفحات دیگر عملکرد خوبی نداشته باشند، احتمالا کاربر خرید نخواهد کرد. برای تنظیم TTL در محتوای کش شده، دو واقعیت اصلی باید به عنوان بهترین روش در نظر گرفته شود. رسیدگی به بسیاری از درخواست‌ها از طریق یک سرور به یک زیرساخت قدرتمند (حافظه بهتر، ذخیره سازی، قدرت پردازش و ...) نیاز دارد.

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

هنگامی که مرورگر کاربر پرونده هایی را از سایت شما درخواست میکند، این درخواست به نزدیکترین سرور موقعیت کاربر هدایت می شود. شما می توانید با استفاده از کنسول گوگل یا Google PageSpeed ​​Insights هم سرعت سایت را اندازه گیری کنید. یکی از ابزارهای راحتی که به شما کمک می کند تا سرعت صفحات وب خود را در کامپیوترها و تلفن همراه اندازه گیری و آزمایش کنید. این افزونه به سایت‌هایی که سرور وب لایت اسپید دارند کمک می کند سرعت سایت را بهینه کنند. در آن می‌توانید با فعالسازی JS Combine و JS HTTP2/HTTP تنظیمات دلخواه خود را اعمال کنید.

بنابراین ، یکی از ساده ترین راه ها برای افزایش سرعت لود سایت ، فشرده سازی و بهینه سازی تصاویر است. امروزه، سرعت بارگذاری سایت و امنیت آن نقش حیاتی در موفقیت وب‌سایت‌ها دارد. یکی از بهترین راه‌حل‌ها برای افزایش سرعت و محافظت از وب‌سایت‌ها، استفاده از Cloudflare است. Cloudflare یک شبکه تحویل محتوا (CDN) قدرتمند است که امکانات پیشرفته‌ای مانند کشینگ، فشرده‌سازی محتوا، و محافظت در برابر حملات DDoS را ارائه می‌دهد. در این مقاله، نحوه پیکربندی Cloudflare در دایرکت ادمین برای بهینه‌سازی سایت را بررسی می‌کنیم.

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

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

این مدت زمان با استفاده از سربرگ‌های Expires یا Cache-Control مشخص می‌شود. برای مثال، می‌توان مشخص کرد که یک تصویر به مدت 24 ساعت در کش نگهداری شود. بعد از این مدت، مرورگر باید دوباره به سرور اصلی مراجعه کند و منبع به‌روز شده را درخواست کند. اولین استراتژی کشینگ که در وبسایت شما پیاده سازی شده است ممکن است بهترین نباشد که رشد کند و بازدید بیشتری را به خود جلب کند. همانطور که وبسایت را با محتوا و ویژگی‌های جدید به روز می‌کنیم، بررسی مداوم تنظیمات و پیکربندی حافظه کش نیز بسیار مهم است.

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

اعتبارسنجی کش فرایندی است که مرورگر با استفاده از آن تعیین می‌کند که آیا یک منبع ذخیره‌شده در کش هنوز معتبر است یا خیر. این کار معمولاً با استفاده از دو سربرگ ETag و Last-Modified انجام می‌شود. مرورگر درخواست می‌کند که آیا نسخه جدیدتری از منبع وجود دارد یا اینکه می‌تواند از نسخه موجود در کش استفاده کند. اگر سرور پاسخ دهد که منبع تغییر نکرده است (معمولاً با کد پاسخ HTTP 304)، مرورگر می‌تواند از کش موجود استفاده کند و نیازی به بارگیری مجدد نیست. منابع کش معمولاً دارای تاریخ انقضا یا حداکثر سنی (Max-Age) هستند. این ویژگی به مرورگر یا سرور می‌گوید که منبع ذخیره‌شده برای چه مدتی معتبر است.

به‌عنوان مثال، استفاده از منابع استاتیک کش شده (مانند CSS و JavaScript) می‌تواند تعداد درخواست‌های HTTP را به شدت کاهش دهد و زمان بارگذاری صفحات وب را سریع‌تر کند. تکنیک‌های دیگر شامل ترکیب فایل‌های CSS و JavaScript و بهینه‌سازی تصاویر است. ذخیره یا کش کردن صفحات وب ، می تواند با کاهش زمان به اولین بایت (TTFB) کمک کند ، زیرا سرور باید از منابع کمتری برای بارگیری صفحه استفاده کند. شما می توانید این کار را در پنل سرور انجام دهید ، به این معنی که میزبان شما آن را برای شما مدیریت می کند. از جمله ابزار های کشینگ روی سرور keepalive و varnish cache می باشد که معمولا برای وردپرس وارنیش کش پیشنهاد می شود.

به نظر شما آیا بهره گیری از حافظه کش همیشه مناسب است؟ آیا ممکن است محتوای کش شده مشکلاتی ایجاد کنند؟ در ادامه خواهید فهمید. به علاوه هنگامی که سرور مبدا آفلاین می‌شود، استفاده از CDN به مدیریت مشکلات در دسترس بودن کمک می‌کند. به عنوان مثال هنگام انجام انتشار یا به روزرسانی سرور، حافظه کش می‌تواند به عنوان یک failover عمل کند. معمولاً یک اکانت میزبانی اشتراکی، فضای سرور را بین چند شرکت به اشتراک می‌گذارند که تعداد افرادی که از سرور استفاده می‌کنند، روی سرعت وبسایت اثر می‌گذارد. اگر وب سایت شما در این شرایط قرار دارد بهتر است که یک پلن اختصاصی برای آن در نظر بگیرید. میزبان هایی هستند که هاست مشترک ارائه نمی دهند ، یعنی اینکه وب سایت شما درگیر ترافیک های اضافی از سوی سایت های دیگر نمی شود.

منابع/فایل هایی که تغییرات کمتر دارند(تصاویر، پی دی اف و غیره) می بایست مدت زمان بیشتری ذخیره شوند. کاربر همیشه فایل لودر را از سرور دریافت می کند، اما ممکن است قبلا منابع و فایل های مورد نظر خود را ذخیره کرده باشد. از طرفی دیگر زمانی که مرورگر کپی از یک فایل/عکس (مانند یک تصویر لوگو) را روی سیستم کاربر، ذخیره می کند؛ در هر صفحه ای که به لوگو نیاز دارد، همان نسخه ذخیره شده را نمایش میدهد. میزبان یا هاستی که برای سایت خود انتخاب می کنید ، نقش مهمی در مدیریت و عملکرد وب سایت شما دارد و می توان گفت که از مهم ترین عوامل سرعت لود سایت ، میزبان آن می باشد. می‌توانید نقشه سایت خود را با رفتن به بخش تنظیمات نقشه سایت، واردکردن URLهای سایت و ذخیره تغییرات مشخص کنید. با پلاگین لایت اسپید نقشه سایت به‌صورت خودکار بررسی می‌شود و صفحه‌ها Cron و Cache می‌شوند.


خرید دوره آموزش سئو کلاه خاکستری