انواع کش در مجنتو
کش ها بخش بسیار مهمی از مجنتو را شامل میشوند، چون بدون کش عملا مجنتو به دلیل سرعت کم غیر قابل استفاده هستش. مجنتو به صورت پیش فرض کش خودش را دارد ولی میشه کش های دیگه مثل ردیس، وارنیش یا مم کش و … را روی آن ست کرد. ما در چالاک سافت در این مقاله (انواع کش در مجنتو) سعی می کنیم مهمترین بخش هایی که توسط مجنتو کش می شوند و همچنین نحوه فعال و غیر فعال یا خالی کردن کش را در این بخش از آموزش مجنتو ۲ به شما یاد بدهیم .
مطالب مرتبط: مجنتو چیست؟ معرفی و ویژگی های فروشگاه ساز مجنتو
بخش تنظیمات کش در مجنتو
اول بریم سراغ بخش تنظیمات کش و اینکه بررسی کنیم وضعیت هر کش در چه حالتیه. وارد ادمین پنل شوید و از منو اصلی system و سپس روی cache management کلیک کنید تا وارد بخش کش ها شوید.
خب در اینجا ما میتوانیم انواع کنش ها را روی کش اجرا کنیم.
- enable : فعال کردن کش (ها)
- disable : غیر فعال کردن کش (ها)
- refresh : نوسازی کش (ها)
برای اجرای هر کنش یک یا چند کش را تیک می زنیم سپس کنش مورد نظر را انتخاب می کنیم و روی submit کلیک می کنیم تا کنش مورد نظر اعمال شود.همچنین برای نمایش وضعیت کش ها به status نگاه می کنیم . هر وقت یک کش باطل شده بود با انتخاب آن کش و اعمال کنش refresh آن را دوباره سازی می کنیم.
مطالب مرتبط: آموزش نصب مجنتو ۲
انواع کش های مجنتو
سعی می کنم در لیست زیر مهمترین کش ها را که به صورت پیش فرض حدود ۱۴ تا هستن را بیارم و توضیح دهم، و این که هر کدام واسه کدام بخش هستش.
کش Configuration
این کش شامل تنظیمات ادمین میشه . بعد از هر تغییری که روی تنظیمات ادمین داده بشه باید این کش خالی بشه.
کش Layouts
این کش برای لایه های xml قرار داده شده . به صورت کلی در بیشتر مواقع ما یک فایل نهایی از xml خواهیم داشت. مثلا ما کلی فایل menu.xml داریم که در نهایت همه فایل ها توسط مجنتو ترکیب می شوند و menu.xml کلی ساخته می شود. این یک کش برای دولوپرهاست. در صورتی که تغییر در فایل های xml داده بشه این کش باید نوسازی بشه (واژه نوسازی را دارم به جای refresh به کار می برم اگه واژه بهتری سراغ دارید لطفا معرفی کنید).
به شما پیشنهاد می کنم مقاله فعال سازی ssl در مجنتو (magento) – آموزش قدم به قدم را مشاهده کنید.
کش Blocks HTML output
این کش مهمترین کشی هستش که روی مجنتو وجود دارد. خروجی بلاک ها را کش می کنه . اینکه بلاک چی هستش و مجنتو چطوری بلاک بندی می کنه باید چند جلسه آموزش داده شود، به همین راحتی نیست. فقط دقت کنید اگه سرعت فروشگاه تان خیلی کمه به احتمال زیاد این کش غیر فعاله یا اگه تغییر دادین ولی توی فرانت آن را نمی بینید بازم به احتمال زیاد با رفرش کردن این کش مشکل حل میشه.
مطالب مرتبط: چگونه سرعت مجنتو را افزایش دهیم
کش Collections Data
کالکشن ها دسته هایی از اطلاعات هستن که از دیتابیس استخراج شدن و بیشتر توی orm دیتابیس باهاشون طرف هستیم. این کش اطلاعات خروجی از دیتابیس را ذخیره میکنه، پس میشه گفت کش خیلی مهمی هستش و با فعال بودنش سرعت فروشگاه، خیلی بهتر از قبل میشه. در صورتی که به ساختار دیتابیس مجنتو بخصوص EAV یی که روش پیاده کردن آشنا باشید، می توانید بفهمید که این کش چقد تاثیر گذار هستش.
کش Reflection Data
این کش ساختار API های مجنتو را کش میکنه. توضیحش سخت نیست ولی چون باید واسه توضیح کل سیستم API مجنتو و اینکه interface ها چه نقشی در این ساختار دارن را باید توضیح بدم ، فعلا کاری باهاش نداریم (احتمالا توی آموزش های دولوپری این بخش راکامل توضیح بدم).
کش Database DDL operations
این کش به صورت معمول توسط خود مجنتو رفرش می شه و در مورد ساختار دیتابیس هستش. در صورتی که یکی از تیبل ها را توسط ماژول تغییر دادین و هنوز دیتا ذخیره نمیشه میتونه مربوط به این قسمت باشه.
کش EAV types and attributes
این کش نوع های مختلف eav و نوع اتربیوت ها را ذخیره می کنه. انواع eav ها شامل customer , product , address,… میشن attribute type هم نوع اتربیونت ها مثل تکست، یا عددی و … مشخص میکنه.
کش Customer Notification
شامل پیام هایی هست که واسه داخل ادمین نمایش داده میشه. این کش جدیدا اضافه شده و هنوز وقت نکردم بررسی کنم ببینم کجاها کاربرد دارد.
کش Page Cache
این کش مثل کش Blocks HTML output عمل می کنه با این تفاوت که فایل های عکس و سی اس اس و جاوا سکریپت را هم کش می کنه. در صورتی که روی فرانت کار می کنید با خالی کردین این کش می توانید نتایج تغییرات را ببنید.
کش Translations
این کش ترجمه ها را ذخیره میکنه، که خب در صورت تغییر ترجمه هر بخش، باید این کش رفرش بشه.