2013-05-28 6 views
3

.NET 프로젝트에는 StateServer를 사용하는 일부 시스템이 있습니다. 이제 Appfabric 캐시를 사용하여 DB에서 얻은 정보를 캐싱합니다. 이 두 설정이 같은 설정 파일에 존재할 수 있습니까? 내 구성 파일의AppFabricCacheSessionStoreProvider와 StateServer가 같은 응용 프로그램 내에서 공존 할 수 있습니까?

세션 상태 부분이 세션 상태가 이미 정의되어 있다는 오류가 발생하고 내가 그것을 다시 정의하지 못할 것을 분명히이

<sessionState mode="StateServer" cookieless="true" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" regenerateExpiredSessionId="true" timeout="30" stateNetworkTimeout="30"/> 
<sessionState mode="Custom" customProvider="AppFabricCacheSessionStoreProvider"> 
    <providers> 
    <!-- specify the named cache for session data --> 
    <add name="AppFabricCacheSessionStoreProvider" type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider" cacheName="default" /> 
    </providers> 
</sessionState> 

것 같습니다.

StateServer 시스템을 Appfabric 캐싱 시스템으로 교체 할 때까지 (매우 큰 프로젝트 임) 우리는 기존 시스템을 방해하고 싶지 않습니다. 그러므로이 질문.

+0

캐싱을 위해 AppFabric을 사용하는 경우 왜 AppFabricCacheSessionStoreProvider를 사용해야하는지 명확하지 않습니다. 또한 2 세션 상태 공급자가있을 때 예상되는 결과가 명확하지 않은 경우 ... 전환에 대한 우려 사항은 무엇입니까? 세션 상태 관리를 많이 맞춤 설정하지 않은 경우 하나의 Out-of-Process 세션 상태를 다른 세션 상태로 대체하지 않으면 응용 프로그램에 거의 영향을 미치지 않습니다 . –

+0

은 AppFabricCacheSessionStoreProvider 사용에 관한 것입니다. 이것은 대규모 시스템 재 구축의 시작에 불과합니다. 우리는 지금까지 HttpContext.Runtime.Caching을 사용 해왔고 분산 된 캐싱 시스템으로 전환하고 있습니다. 우리는 많은 사람들에게 봉사합니다. – krishgopinath

+0

그리고 우리는 세션 상태 관리를 사용자 정의했습니다. 나는 예를 들어 StateServer 모드를 사용하기 때문에 우리의 맞춤 솔루션을 공개 할 수는 없습니다. :) 미안합니다. 간단한 질문입니다. 나는 무엇을 구하는 것이 가능한가? 두 제공자가 존재할 수 있습니까? – krishgopinath

답변

2

아니요. 고유 한 활성 세션 상태 공급자 만 동시에 가질 수 있으며 런타임에 동적으로 변경할 수도 없습니다.

이전에는 세션 저장소 래퍼를 만들기 위해이 article도 조사했습니다. 마지막으로 복잡성과 성능 저하로 포기했습니다.

+0

감사합니다. 내가 알고 싶었던 전부. – krishgopinath