कैश प्रबंधन के तहत Magento व्यवस्थापक में, इसका अर्थ यह है कि यह कैश को अमान्य के रूप में दिखाता है? Magento कैसे एक कैश पता है अवैध है? विशेष रूप से, मैं HTML ब्लॉक कैश के बारे में सोच रहा हूं। इस कैश को अमान्य के रूप में दिखाने के लिए कौन सी स्थितियां पैदा होंगी?Magento में "अवैध" कैश का क्या अर्थ है?
उत्तर
Magento में, जब भी आप उत्पादों, स्थिर ब्लॉक इत्यादि में परिवर्तन करते हैं, यह पहचानता है कि डेटाबेस में डेटा कैश में जो कुछ भी है, उतना ही नहीं है। दुर्भाग्य से, Magento का एहसास नहीं है कैश डेटा अलग है, बस कुछ अलग है।
आपको सिस्टम> कैश प्रबंधन में जाना होगा और अमान्य कैश प्रकार रीफ्रेश करना होगा।
संपादित करें:
एक मॉड्यूल बनाएँ (या एक मौजूदा मॉड्यूल का उपयोग) है कि आप कैश ताज़ा के लिए एक क्रॉन जॉब स्थापित करने के लिए उपयोग कर सकते हैं। {Namespace}/{modulename} /Model/Observer.php
उस फ़ाइल के अंदर:: एक फ़ाइल बनाएँ
<?php
class <namespace>_<modulename>_Model_Observer {
public function refreshCache() {
try {
$allTypes = Mage::app()->useCache();
foreach($allTypes as $type => $blah) {
Mage::app()->getCacheInstance()->cleanType($type);
}
} catch (Exception $e) {
// do something
error_log($e->getMessage());
}
}
}
में अपने मॉड्यूल के etc/config.xml:
<config>
...
<crontab>
<jobs>
<{modulename}_refresh_cache>
<schedule><cron_expr>* * * * *</cron_expr></schedule>
<run><model>{modulename}/observer::refreshCache</model></run>
</{modulename}_refresh_cache>
</jobs>
</crontab>
...
</config>
अब के रूप में जब तक आपके सर्वर पर क्रॉन सही तरीके से कॉन्फ़िगर किया गया हो, तब तक कैश स्वचालित रूप से अपडेट हो जाएगा, जितनी बार क्रॉन चलता है।
2015: एओई शेडुलर cronjob द्वारा कैश को साफ करने में सक्षम है। बदलें नौकरी
"core_clean_cache"
30 2 * * *
(डेली 2:30)
59 * * * *
करने से
(हर 59 मिनट)।
@ मैगेंटो गाय का जवाब सही है, लेकिन मुझे लगता है कि नीचे दिया गया यह समाधान Magento पर केवल अमान्य कैश को रीफ्रेश करने में आपकी सहायता कर सकता है।
मैं बिट्टनामी Magento स्टैक का उपयोग करता हूं, मेरे लिए यह समाधान नीचे दिया गया सबसे अच्छा था।
मैंने एक Mage_Shell_Class php फ़ाइल बनाने की कोशिश की है, लेकिन सफलता के बिना (अमान्य कैश सरणी हमेशा चलती है जब यह चलती है, इससे कोई फर्क नहीं पड़ता, और मैं वास्तव में कल्पना क्यों नहीं करता)।
मैं एक php फ़ाइल 'sample.php' बना लिया है:
<?php
require 'app/Mage.php';
$invalid = Mage::app()->getCacheInstance()->getInvalidatedTypes();
foreach($invalid as $i)
{
Mage::app()->getCacheInstance()->cleanType($i["id"]);
}
मैं इसे Magento रूट फ़ोल्डर पर रखा गया है, और इसे शुरू करने के मैं एक cronjob कि जड़ उपयोगकर्ता के अधीन ही इस्तेमाल करते हैं।
तो, जड़ उपयोगकर्ता पर cronjob बनाने के लिए:
sudo crontab -u root -e
और यह इसे चलाने के लिए मेरी कमांड लाइन था:
* * * * * . /opt/bitnami/scripts/setenv.sh ; /opt/bitnami/php/bin/php /opt/bitnami/apps/magento/htdocs/sample.php >> /var/log/cron/cron.log 2>&1
इस लाइन पर कुछ भागों मेरी समस्या के लिए बहुत खास हैं :
- चूंकि यह केवल अमान्य कैश को रीफ्रेश करता है, मैंने इसे हर मिनट चलाने का फैसला किया है।
- setenv.sh एक ऐसी स्क्रिप्ट है जो मुझे इस विशेष बिट्टानी स्टैक से निपटने के दौरान पर्यावरण स्थापित करने में मदद करती है।
- इस स्क्रिप्ट के आउटपुट को प्राप्त करने के लिए मैंने इस अंतिम भाग का उपयोग किया है ">> /var/log/cron/cron.log 2> & 1" मैंने जो निर्देशिका बनाई है, उसे आउटपुट त्रुटियों के लिए (/ var/log/क्रॉन), और इस पर सही अनुमति दी है।
शायद आपको क्रॉन लाइन कमांड को बदलने की ज़रूरत है, लेकिन मुझे लगता है कि यह आपकी मदद करेगा।
- 1. परफ कैश घटनाओं का अर्थ क्या है?
- 2. Magento कैश
- 3. Magento "फ्लश कैश स्टोरेज"
- 4. Magento डेटाबेस आईपी कैश किया गया है
- 5. स्पष्ट Magento कैश
- 6. {} का क्या अर्थ है?
- 7. "===" का क्या अर्थ है?
- 8. Magento api: अवैध webservice एडाप्टर निर्दिष्ट
- 9. क्रिप्टिक जीसी कैश प्रविष्टि का अर्थ
- 10. Magento के पूर्ण पृष्ठ कैश
- 11. पायथन में "|" चिह्न का क्या अर्थ है?
- 12. सी में ईपीएस का क्या अर्थ है?
- 13. पर्ल में $ # सरणी का क्या अर्थ है?
- 14. PHP में "&" का अर्थ क्या है?
- 15. URL में gs_upl का क्या अर्थ है?
- 16. जावा में, नाएन का क्या अर्थ है?
- 17. सिंटेक्स हास्केल में $$ का क्या अर्थ है?
- 18. वीबीएनईटी में [स्ट्रिंग] का क्या अर्थ है?
- 19. जावास्क्रिप्ट में @cc_on का क्या अर्थ है?
- 20. प्रोग्रेसडिअलॉग में 'अनिश्चित' का अर्थ क्या है?
- 21. पर्ल में कॉलन का क्या अर्थ है?
- 22. PHP में। = ऑपरेटर का क्या अर्थ है?
- 23. डॉटनेटनेट में "न्यूक" का क्या अर्थ है?
- 24. रुबी में __FILE__ का क्या अर्थ है?
- 25. विम स्क्रिप्ट्स में "। =" का क्या अर्थ है?
- 26. ग्रोवी में 'निजी' का क्या अर्थ है?
- 27. जावास्क्रिप्ट में '#' चिह्न का अर्थ क्या है?
- 28. सीएसएस में "_height" का क्या अर्थ है?
- 29. AspNetCompatibilityRequirements का वास्तव में क्या अर्थ है?
- 30. रुबी में * (स्टार) का क्या अर्थ है?
मैं समझता हूं कि कैश को रीफ्रेश कैसे करें, जो मैं करता हूं जब मुझे लगता है कि इसे अमान्य कर दिया गया है। मैं वास्तव में समझ में नहीं आता कि यह कैसे जानता है कि कैश को अवैध कर दिया गया है। और संबंधित- यदि यह जानता है कि यह अमान्य है तो यह स्वचालित रूप से कैश को रीफ्रेश क्यों नहीं करता है? क्या कैश को रीफ्रेश करने का कोई खतरा है? – localfilmmaker
जब भी आप परिवर्तन करते हैं, Magento घटनाओं को आग लगती है। इन घटनाओं के श्रोताओं हैं जो प्रासंगिक कैश को अमान्य करते हैं। यह क्यों करता है (और यह स्वचालित रूप से रीफ्रेश क्यों नहीं होता है) यह आखिरकार एक डिज़ाइन निर्णय है, लेकिन शायद सामग्री को चरणबद्ध करने में सक्षम होने के साथ कुछ करना है। उदाहरण के लिए, आप कई उत्पादों में परिवर्तन कर सकते हैं जो सभी एक दूसरे से संबंधित हैं, और फिर कैश को रीफ्रेश कर सकते हैं। मैंने इसे क्रॉन जॉब के साथ पार कर लिया है जो प्रत्येक बार क्रॉन सर्वर पर चलता है, और स्वचालित रूप से कैश को रीफ्रेश करने के लिए फ़ंक्शन को कॉल करता है। कोड जोड़ने के लिए मैं अपना मूल उत्तर संपादित करूंगा। –
बहुत खराब समाधान: एक क्रॉन सेट करना जो सभी कैश को रीफ्रेश करता है, हर बार यह चलता है, यह कैश को अक्षम करने जैसा है ... आपको कम से कम जांचना चाहिए कि कैश को अमान्य कर दिया गया है और हर 10/30 मिनट में क्रॉन सेट करें ... – WonderLand