2010-12-01 3 views
2

먼저 내가 수행하려고 시도하고있는 것을 말하게하십시오. 현재 작업중인 문서가 변경된 경우 웹 응용 프로그램의 사용자에게 알리고 싶습니다. 원하는 결과를 얻기 위해 긴 폴링을 사용하려고합니다. 긴 폴링 페이지 (제한 시간이 만료 될 때까지 반복 사이에서 약 250ms 동안 폴링 및 휴면)에 대한 요청을 보내고 동시에 웹 사이트의 다른 페이지를로드하려고하면 두 번째 요청은 첫 번째 요청이 완료 될 때까지 대기합니다. 이 문제에 대한 해결책이 있습니까? 시간이 지나면 InProc보다 웹 가든이나 다른 형식의 세션 관리를 사용하는 것은이 상황에서 허용되지 않습니다. 제공 할 수있는 모든 도움에 감사드립니다.InProc 세션 관리를 사용하는 동시 ASP.NET 요청

답변

1

이것은 아마도 요청을 순차적으로 처리하게하는 세션 동기화 일 것입니다. 세션을 인식하지 못하도록 long-polling 핸들러를 변경할 수 있으면 문제를 해결해야합니다.

대상이 무엇인지 말하지 않았지만 .ashx이거나 을 구현하지 않는 사용자 지정 IHttpHandler 인 경우 요청이 세션에 첨부되지 않거나 동기화되지 않습니다. 물론 이는 긴 폴링 요청이 세션에 액세스 할 수 없음을 의미합니다.

+0

도움을 주셔서 감사합니다. 솔루션은 완벽하게 작동했습니다. 귀하의 가정이 정확했던 것 같습니다. AJAX 처리기는 내부 HTML이없는 표준 .aspx 파일로 구현되었습니다. 기회가 생기면 AJAX 핸들러를 모든 일반 핸들러로 전환하는 데 시간과 노력을 기울일 것입니다. 내가 IRequiresSessionState의 존재를 알지 못했기 때문에 나는 이것을했다고 확신합니다. Sam에게 다시 한 번 감사드립니다. – mmaguigan

관련 문제