Я занимаюсь разработкой приложения, которое представляет канал Twitter компании в приложении Facebook. Это крупная компания с большим объемом трафика для приложения FB, поэтому мне нужно кэшировать данные Twitter, которые я получаю (из Twitter API), чтобы я мог избежать ограничения их скорости.
В моем коде я использую LinqToTwitter для вызова API, а затем создаю строку JSON с результатами. Эта строка затем подается в браузер пользователя через AJAX.
Ограничение скорости вызовов API Twitter составляет 150 в час, поэтому я полагаю, что я просто помещу строку данных JSON, которую я создаю, в объект кэша и обновляю ее только раз в минуту, оставляя меня значительно ниже предела скорости Twitter.
Проблема в том, что я довольно новичок в MVC для .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?
Спасибо!
Мэтт