2008-08-14 10 views
6

हमने कठोर तनाव परीक्षण सहित पूर्वावलोकन 3 का उपयोग करके एक लाइव, ताजा, बदसूरत साइट तैनात की।क्या माइक्रोसॉफ्ट एमवीसी पूर्वावलोकन 4 में आउटपुट कैशफिल्टर वास्तव में एक्शन इनवोकेशन पर सहेजता है?

पेज आउटपुट कैशिंग हमारे उद्धारक थे और हमें हमारी प्रदर्शन संविदात्मक आवश्यकताओं को पूरा करने की क्षमता प्रदान की।

मेरा सवाल है, क्या कार्रवाई OutputCacheFilter और पृष्ठ आउटपुट कैशिंग के बीच कोई अंतर है?

क्या पृष्ठ आउटपुट कैशिंग की तुलना में एक्शन आउटपुट कैशिंग तेज है?

उत्तर

3

आंतरिक रूप से, आउटपुट कैशएट्रिब्यूट (उर्फ आउटपुट कैश फ़िल्टर) उसी आंतरिक तंत्र का उपयोग page output caching (उर्फ @ आउटपुट कैश निर्देश) के रूप में करता है।

इसलिए, यह पृष्ठ आउटपुट कैशिंग से कहीं अधिक तेज़ नहीं है। हालांकि, एमवीसी के साथ, आप वास्तव में एमवीसी में @OutputCache निर्देश के माध्यम से पेज आउटपुट कैशिंग का उपयोग नहीं कर सकते हैं क्योंकि हम के बाद दृश्य (उर्फ पेज) प्रस्तुत करते हैं। तो आपको बहुत कम लाभ मिलेगा।

आउटपुट कैश फ़िल्टर के साथ, यह सही चीज करता है और आउटपुट कैश में परिणाम होने पर एक्शन कोड निष्पादित नहीं करता है। उम्मीद है की वो मदद करदे। :)

1

बस जागरूक रहें कि अगर आप Html.RenderAction (..) को कैश करने के लिए चिह्नित किए गए क्रिया पर कॉल करते हैं तो वर्तमान में एक बग है। कैश किए जाने वाले विशिष्ट क्रिया के बजाय, पूरा पृष्ठ कैश हो जाता है। मैंने इसे कोडप्लेक्स पर पहले ही बताया है और यह एक ज्ञात मुद्दा प्रतीत होता है: Calling <% HTML.RenderAction<...>(...); %> to an Action with [OutputCache(..)] causes entire page to cache.

संबंधित मुद्दे