2012-09-29 2 views
3

세션이 손실되는 문제가있는 응용 프로그램을 가지고 있으며 너무 자주 응용 프로그램 풀을 재생하는 것과 관련이 있습니다.SQLServer 세션 상태 관리가 응용 프로그램 풀에서 손실 됨

out of process 솔루션을 시도하고 SQLServer sessionState를 구성했지만 작업자 프로세스를 재활용 할 때 세션이 계속 날아가고 있습니다. 여기에 내가 설정에 데이터베이스를 적절한 SQL 스크립트를 실행했습니다 내가 세션이 생성되어 데이터베이스에 저장되어있는 것을 볼 수 있지만,

<sessionState cookieless="false" stateConnectionString="tcpip=localhost:42424" mode="SQLServer" sqlConnectionString="Data Source=(local;User ID=user;Password=password" timeout="180" /> 

내 Web.config의 인 내가 수동의 Web.config 또는 변경하는 경우 세션이 손실 된 작업자 프로세스를 재활용하십시오. 내가 도대체 ​​뭘 잘못하고있는 겁니까??

사이드 노트, StateServer 모드와 똑같은 동작이 발생합니다. 내가 겉으로보기에 제대로 구성, 내가 볼 때 주 서비스 메모리 발자국이 더 커지면 .... 로그인 할 때 직렬화되지 않은 객체를 밀어 넣으려고했는데 오류가 발생했습니다 ....하지만 애플리케이션 풀을 재활용하거나 내가 세션을 .... 잃을 web.config 반면

I도 (정말 사용하고자하는 것입니다) 여기에서 찾을 수 있습니다 그 Memcached가 세션 제공자를 설정하는 시도했다 : http://memcachedproviders.codeplex.com/releases/view/10468

과 똑같은 일을하고 있습니다! 데이터베이스에서 세션이 생성 된 것을 볼 수 있습니다. 직렬화되지 않은 객체와 상호 작용을 시도하면 직렬화와 관련된 오류가 발생하지만 응용 프로그램 풀이 재활용되면 세션이 손실됩니다. 내가 이벤트 뷰어에서이 문제를보고 있어요 일부 로깅을 활성화 한 후
: 이벤트 코드 : 1003 이벤트 메시지 : 응용 프로그램 컴파일

아무도 시작하지? 정말 .... 프로세스 세션 상태에서 빠져 나와야합니다.

+0

아마도 세션 데이터에 영향을 미치는 global.asax를 재설정했을 수 있습니까? – Aristos

+0

세션을 직렬화 할 수 있습니까? –

+0

세션이 손실되었다는 것을 어떻게 확립하고 있습니까? 어떻게 세션 상태를 사용하고 있습니까? SQL Server 대신 State Server를 사용하는 경우에도 동일한 문제가 있습니까? –

답변

0

컴퓨터 키 (IIS 7.5로 가정)에 대한 설정을 확인하십시오. 웹 서버가 컴퓨터 키를 자동 생성하도록 설정되어 있으면 응용 프로그램이 재활용되어 세션을 잃을 때 새 키를 생성 할 수 있습니다.

웹 응용 프로그램의 고유 한 컴퓨터 키를 생성하는 쉬운 방법은이 링크를 참조하십시오. 웹 서버 또는 웹 응용 프로그램 수준에서 생성 할 수 있어야합니다.

http://blogs.msdn.com/b/amb/archive/2012/07/31/easiest-way-to-generate-machinekey.aspx

또한, FWIW는 SQL 서버 세션 상태 관리자는 데이터베이스에 매우 뜨려 입니다. 작동하지만 세션 공급자를 사용하는 모든 요청에 ​​대해 데이터베이스에 도달하게됩니다.

+0

응답 해 주셔서 감사합니다! 링크를 확인해 보겠습니다. 예, 처음에는 SQLServer를 사용하지 않으려했습니다. Memcached Session Provider를 사용하려고했습니다. 어떤 경험이 있습니까? 아니면 프로세스 외부 세션 상태에 대한 다른 솔루션을 권장 할 수 있습니까? – Cognitronic

+0

불행히도, 나는 진지한 것을 위해 실제로 사용한 다른 제공자를 추천 할 수 없습니다. 유망 해 보이는 Couchbase Session 상태 제공자를 조사했습니다. memcached 공급자는 멋지지만 Windows에서 2GB 이상의 데이터를 지원할 수 있습니까? – rsbarro

+0

@Cognitronic 당신은 이걸 가지고 행운이 있었나요? 또한, 어떤 버전의 IIS를 사용하고 있습니까? – rsbarro

관련 문제