0
실행 스레드 당 DataCacheFactory
개체의 단일 인스턴스를 인스턴스화하는 것이 가장 좋습니다. AppFabric 캐싱 웹 asp.net 응용 프로그램에서 구현하고 있습니다.웹 응용 프로그램에서 DataCacheFactory 객체를 관리하는 가장 좋은 방법은 무엇입니까?
실행 스레드 당 DataCacheFactory
개체의 단일 인스턴스를 인스턴스화하는 것이 가장 좋습니다. AppFabric 캐싱 웹 asp.net 응용 프로그램에서 구현하고 있습니다.웹 응용 프로그램에서 DataCacheFactory 객체를 관리하는 가장 좋은 방법은 무엇입니까?
제안 :
public class AppFabricCacheWrapper
{
public static DataCache GetCache(string cacheName)
{
var cacheFactory = GetDataCacheFactory();
return cacheFactory.GetCache(cacheName);
}
private static DataCacheFactory GetDataCacheFactory()
{
if (HttpContext.Current.Items["DataCacheFactory"] == null)
{
CreateFactoryInstance();
}
return (DataCacheFactory)HttpContext.Current.Items["DataCacheFactory"];
}
private static void CreateFactoryInstance()
{
var config = new DataCacheFactoryConfiguration
{
Servers = GetServerNames(),
};
HttpContext.Current.Items["DataCacheFactory"] = new DataCacheFactory(config);
}
private static IEnumerable<DataCacheServerEndpoint> GetServerNames()
{
var namesList = new List<DataCacheServerEndpoint>
{
new DataCacheServerEndpoint("SERVER1", 22233),
new DataCacheServerEndpoint("SERVER2", 22233)
};
return namesList;
}
}