में जेएसओएन डेटा कैशिंग मैं एक ऐसा एप्लीकेशन विकसित कर रहा हूं जो एक फेसबुक एप्लिकेशन पर कंपनी की ट्विटर फ़ीड प्रस्तुत करता हो। यह एक बड़ी कंपनी है जिसमें एफबी ऐप के बहुत सारे ट्रैफिक हैं, इसलिए मुझे ट्विटर ट्विटर (ट्विटर एपीआई से) कैश करने की ज़रूरत है ताकि मैं उनकी दर सीमा से बच सकूं।सी # एमवीसी 3
मेरे कोड में, मैं एपीआई को कॉल करने के लिए LinqToTwitter का उपयोग करता हूं और फिर मैं परिणाम के साथ JSON की एक स्ट्रिंग का निर्माण करता हूं। तब उस स्ट्रिंग को उपयोगकर्ता के ब्राउज़र को AJAX के माध्यम से खिलाया जाता है।
ट्विटर एपीआई कॉल के लिए दर सीमा 150 प्रति घंटे है, इसलिए मुझे लगता है कि मैं केवल कैश ऑब्जेक्ट में जेएसओएन डेटा की स्ट्रिंग रखूंगा और प्रति मिनट एक बार मुझे रीफ्रेश करूँगा जो मुझे ट्विटर दर सीमा से नीचे छोड़ देता है।
समस्या यह है कि मैं .NET के लिए एमवीसी के लिए बिल्कुल नया हूं और System.Web.Caching का उपयोग नहीं कर सकता जैसा कि मैं एक वेबफॉर्म एप्लिकेशन में कर सकता हूं।
private string KeyTwitterData;
...
string data = null;
if (Cache[KeyTwitterData] == null)
{
var url = LinqToTwitter.Request.Url;
data = ServiceMethods.GetConversation(url);
Cache.Insert(KeyTwitterData, data);
}
else
{
data = (string)Cache[KeyTwitterData];
}
किसी कृपया मुझे बताओ कैसे MVC3 में यह पूरा करने के कर सकते हैं:
बड़े webforms ऐप्लिकेशन में मैं बस की तरह कुछ किया?
धन्यवाद!
मैट
@Darin, क्या यह सर्वर के बजाय ग्राहक को स्थान सेट के साथ काम करेगा? मेरा मतलब है, सर्वर के बजाय क्लाइंट पर जेसन परिणाम कैशिंग? – AdrianoRR
डारिन, महान जवाब! मैं सिर्फ यह जानना चाहता हूं कि एक विशिष्ट नियंत्रक से कैश [आउटपुट कैश] को अमान्य करना संभव होगा या नहीं। – GibboK