मानक कैश विकल्पों में अंतर


12

जूमला! कैशिंग के लिए एक अलग तरीका है:

  • "रूढ़िवादी कैशिंग" (वैश्विक विन्यास में)
  • "प्रगतिशील कैशिंग" (वैश्विक विन्यास में)
  • प्लगइन "सिस्टम - कैश"

मेरे पास निम्नलिखित प्रश्न हैं:

  • क्या अंतर हैं?
  • मैं किस विकल्प का उपयोग करता हूं?
  • जब मैं पहले से ही कॉन्फ़िगरेशन में विकल्प चालू करता हूं तो क्या मुझे कैश प्लगइन को सक्षम करना चाहिए?
  • डिफ़ॉल्ट कैश सिस्टम को कॉन्फ़िगर करने का क्या उचित तरीका है?

जवाबों:


5

श्याम के जवाब के अलावा ...

में Global Configuration-> Cache...

  • कंजर्वेटिव कैशिंग एक घटक / मॉड्यूल के प्रत्येक दृश्य के लिए उत्पन्न कैश है
  • प्रगतिशील कैशिंग एक कैश है जो प्रत्येक व्यक्ति-उपयोगकर्ता के आधार पर एक घटक / मॉड्यूल के प्रत्येक दृश्य के लिए उत्पन्न होता है

यह विचारों का एक एक्सटेंशन-स्तरीय कैश है। इसे विस्तार डेवलपर द्वारा लागू किया जाना चाहिए ताकि कोई प्रभाव न हो।

नोट: लॉग इन किए गए उपयोगकर्ताओं को इन माध्यमों से कैश्ड सामग्री कभी नहीं दिखाई देगी।

यदि मॉड्यूल के उन्नत विकल्पों में कैशिंग को अक्षम करने से 'कंज़र्वेटिव कैशिंग' सक्षम है, तो आप व्यक्तिगत मॉड्यूल कैशिंग को ओवरराइड कर सकते हैं। यदि आप 'प्रगतिशील कैशिंग' सेट है, तो आप प्रति मॉड्यूल आधार पर मॉड्यूल कैशिंग को ओवरराइड नहीं कर सकते।

सिस्टम - कैश प्लगइन में प्रत्येक पूरे पेज के पेज कैश उत्पन्न करता है /cache

अधिकांश परिदृश्यों के लिए, सिस्टम को सक्षम करना - कैश प्लगइन पर्याप्त है। यदि आप केवल विशेष मॉड्यूल / घटकों (जो कैशिंग लागू है) को कैश करना चाहते हैं, तो प्लगइन को अक्षम करें और वैश्विक कॉन्फ़िगरेशन में रूढ़िवादी कैशिंग को सक्षम करें। फिर आप मॉड्यूल के उन्नत विकल्पों में कैशिंग को अक्षम करके अपवाद सेट कर सकते हैं।

ध्यान दें कि कोई भी कैशिंग समय और स्थान के बीच एक संतुलन है - पूर्ण पृष्ठ कैशिंग डीबी लोड को कम करेगा और इसलिए पृष्ठ लोड समय, लेकिन डिस्क के उपयोग को बढ़ा देगा।

आप आगे के विश्लेषण और कैशिंग प्रणाली के मानक पा सकते हैं यहाँ , साथ ही व्यवस्थापकों के लिए जूमला कैश डॉक्स और इस उत्कृष्ट लेख विभिन्न विकल्प और लागू चेतावनियां का ब्यौरा।


लेकिन मैं प्रगतिशील कैश का उपयोग करता हूं और यह मॉड्यूल कैश सेटिंग्स का सम्मान करता है, इसलिए मुझे लगता है कि आपको कोशिश करनी चाहिए और अपना जवाब सही करना चाहिए।
जैकजो

क्या आपको यकीन है? मैंने Progressive cachingजिन राज्यों की समीक्षा की है, हर साइट किसी भी मॉड्यूल-स्तरीय सेटिंग्स (विशेष रूप से 3rd तालिका के तहत 'Raw Results' inmotionhosting.com/support/edu/joomla-25/caching/… ) पर ओवरराइड करेगी । मैं एक तरह से या दूसरे को सत्यापित करने के लिए आज एक साफ स्थापित पर यह परीक्षण और परीक्षण करूंगा।
कोडिंगखंड्स

1
के बारे में: "कंजर्वेटिव कैशिंग प्लस सिस्टम को सक्षम करना - कैश प्लगइन पर्याप्त है" - क्या यह एक वास्तविक अर्थ है? क्योंकि जैसा कि आपने समझाया: प्लगइन पूरे पेज के लिए कैश करते हैं, इसलिए (जैसा कि मैं समझता हूं) इस मामले में जूमला! एक्सटेंशन न चलाएं और इसलिए कंजर्वेटिव कैशिंग .. या मैं कुछ गलत समझ रहा हूं?
फेडिक

1
मैंने अभी इसकी कोशिश की और कुछ स्थितियों में यह काम करता है और अन्य यह नहीं करता है! यदि आप मॉड्यूल को एक लेख में शामिल करते हैं (उदा: अपनी स्थिति से) यह नो कैश सेटिंग का सम्मान करता है, लेकिन सामान्य मॉड्यूल स्थिति में इसे अनदेखा कर देता है! मैं कसम खाता हूँ कि यह एक सामान्य मॉड्यूल के लिए काम करता है, लेकिन मैंने इसे फिर से आजमाया और ऐसा नहीं है।
जैकजो

@ फ़ेडिक तुम काफी सही हो, मेरी ओर से एक गलतफहमी। अब मेरे जवाब को अपडेट किया।
कोडिंगहैंड्स

3
  1. कैशिंग के बीच अंतर -

    रूढ़िवादी कैशिंग मानक प्रकार का कैशिंग है। यहां देखिए यह कैसे काम करता है:

    एक आगंतुक आपकी वेबसाइट पर एक पृष्ठ पर जाता है।

    • जूमला यह चेक करता है कि उसके कैश डायरेक्टरी में उस पेज का नॉन-एक्सपायर्ड वर्जन है या नहीं।
    • यदि कैश्ड पृष्ठ मौजूद है (और इसकी समय सीमा समाप्त नहीं हुई है), तो जूमला आगंतुक को इसकी सेवा देगा
    • अन्यथा, पृष्ठ का कैश्ड संस्करण बनाया जाता है, और उस कैश्ड संस्करण को विज़िटर को और हर दूसरे परिणामी विज़िटर को परोसा जाएगा, जब तक कि यह ("यह" हमारा मतलब है कि पृष्ठ समाप्त नहीं हुआ है)।

    उपरोक्त परिदृश्य विशिष्ट है और यह है कि अधिकांश डेवलपर्स कैशिंग कैसे लागू करते हैं।

    प्रगतिशील कैशिंग निम्नलिखित तरीके से काम करता है:

    • एक आगंतुक आपकी वेबसाइट पर एक पृष्ठ पर जाता है।
    • Joomla जाँचता है कि क्या उस पृष्ठ का कैश्ड संस्करण उस आगंतुक के लिए मौजूद है और यह अभी तक समाप्त नहीं हुआ है।
    • यदि वह कैश्ड पृष्ठ मौजूद है, तो उसे आगंतुक को परोसा जाएगा, अन्यथा, जूमला उस विशिष्ट आगंतुक के लिए कैश्ड पृष्ठ बनाएगा और फिर उसे उसकी सेवा देगा।
    • यदि कोई अन्य आगंतुक (जो उस पृष्ठ पर कभी नहीं रहा है) उस पृष्ठ पर जाता है, तो जूमला पिछले आगंतुक के कैश्ड पृष्ठ की सेवा नहीं करेगा, इसके बजाय, यह विशेष रूप से उस उपयोगकर्ता के लिए उस पृष्ठ का कैश्ड संस्करण बनाएगा, और फिर उसे परोस देगा। उसे।

    जैसा कि आप देख सकते हैं, प्रगतिशील कैशिंग केवल एक प्रदर्शन में सुधार प्रदान करता है

    • यदि एक ही आगंतुक पृष्ठ के कैश्ड संस्करण के जीवनकाल में एक ही पृष्ठ पर जाता है।
    • अधिकांश परिदृश्यों में, एक विशाल प्रदर्शन हिट में प्रगतिशील कैशिंग परिणाम कैश को अक्षम करने से कहीं अधिक खराब होता है, केवल इसलिए कि लगभग हर यात्रा के लिए, जूमला को अनुरोध को संसाधित करना पड़ता है, पृष्ठ का कैश्ड संस्करण बनाना पड़ता है, और फिर आगंतुक को पृष्ठ की सेवा प्रदान करनी होती है। (केवल उस अनुरोध को संसाधित करने और उस पृष्ठ में सेवा करने के बजाय जहां कैश अक्षम है)।
    • ओह, और जूमला द्वारा उत्पन्न सभी कैश फ़ाइलों के बारे में मत भूलना - आप केवल यह सोच सकते हैं कि यदि आपके पास उच्च ट्रैफ़िक समाचार वेबसाइट (जिसमें कई पृष्ठ हैं) तो इन फ़ाइलों में से कितनी फाइलें आपके कैश फ़ोल्डर में होंगी।

    अब आप सोच सकते हैं कि किन परिस्थितियों में प्रगतिशील कैशिंग उपयोगी है? ठीक है, कल्पना कीजिए कि आपके पास एक वीडियो वेबसाइट है (यूट्यूब के समान)। आप प्रत्येक आगंतुक को उसके स्थान और / या ब्राउज़र सेटिंग्स और / या प्लग इन के आधार पर अनुकूलित पृष्ठ दिखाना चाहते हैं। इसलिए, प्रत्येक पृष्ठ के लिए जिसे आगंतुक लोड करते हैं, आप इस जानकारी का उपयोग उस पृष्ठ के एक अनुकूलित संस्करण को उत्पन्न करने के लिए करते हैं और आप इसे कैश करते हैं। यदि आगंतुक उसी पृष्ठ पर फिर से आता है, तो जूमला को अनुकूलित पृष्ठ बनाने के लिए कार्य को फिर से करने की आवश्यकता नहीं है।

    बेशक, कई परिदृश्य हैं जिनके तहत प्रगतिशील कैशिंग वास्तव में उपयोगी है, लेकिन हमारी राय में, प्रगतिशील कैशिंग पर केवल विचार किया जाना चाहिए, यदि वेबसाइट को कई आगंतुक मिलते हैं और यदि वे आगंतुक अधिकतर आगंतुक दोहराते हैं। अन्य मामलों में इसका उपयोग करने से वेबसाइट के प्रदर्शन पर महत्वपूर्ण प्रभाव पड़ेगा। रेफरी: जूमला कैशिंग को गहराई से पढ़ें

  2. कंजर्वेटिव की सिफारिश की है।

  3. सक्षम होने पर कैश प्लगइन पूरा पेज कैश प्रदान करता है।

3
क्या आप इस उत्तर को संपादित कर सकते हैं, इसलिए पूर्वनिर्मित ब्लॉक बजाए ब्लॉकचोट हैं? इसके अलावा, कृपया इस जानकारी के मूल स्रोत ( itoctopus.com/…) और stackoverflow.com/questions/12739297/… ) में उद्धृत करें । इसके अलावा, आप प्रगतिशील कैशिंग की सलाह देते हैं भले ही यह लेख में केवल विशिष्ट उपयोग के मामलों के लिए उल्लेख किया गया हो ...?
कोडिंगहैंड्स

बहुत स्पष्ट नहीं है, आपने कहा: कंजर्वेटिव / प्रोग्रेसिव "चेक करता है कि क्या उस पेज का कैश्ड संस्करण मौजूद है" और प्लगइन के बारे में "कैश प्लगइन पूरा पेज कैश प्रदान करता है" .. तो ये सभी विकल्प और प्लगइन पूरे पेज आउटपुट के लिए कैशिंग करते हैं या?
फेडिक

ठीक है, मुझे एक और जवाब दिखाई देता है;)
फेडिक

अपडेट किया गया उत्तर # 2 रूढ़िवादी में बदल गया।
श्याम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.