Я успешно начал использовать службу кэширования Azure AppFabric, но я не уверен, каков наилучший способ создания объекта DataCacheFactory.Сейчас я создаю его для каждого вызова в кэш, но, видимо, это не идеальный способ сделать это ...
Некоторые советуют вызывать синглтон.Но я не уверен, что понимаю, как это будет реализовано (не фактический класс Singleton, а как связать все это вместе).
Сегодня у меня есть класс CacheProvider, который создан для меня с помощью Ninject, где я могу выполнять операции Get / Put / Remove.Для каждого из этих методов я создаю объект DataCacheFactory и затем вызываю .GetDefaultCache (), чтобы получить объект DataCache, где я вызываю Put / Get / Remove соответственно.Я делаю это с помощью одного метода, который выглядит следующим образом:
private T Cache<T>(Func<DataCache, T> cacheAction)
{
using (DataCacheFactory dataCacheFactory = new DataCacheFactory())
{
DataCache dataCache = dataCacheFactory.GetDefaultCache();
return cacheAction(dataCache);
}
}
Теперь я почти уверен, что это не очень умная идея, вместо этого я должен получить объект DataCache через Singleton, гдеобъект DataCacheFactory создается только один раз.НО как этот объект выживет между запросами?И как это работает с> 1 экземпляром в Azure?
Надеюсь, все это имеет смысл, и что кто-то с большим опытом, чем я (3 часа), может мне помочь.