2010-02-08 4 views
1

Silverlight 3 응용 프로그램이 있습니다. IIS에서 실행되는 WCF 서비스에 액세스합니다. 애플리케이션을 아무 활동없이 잠시 앉아있게하면 서버/로그인 인증에 대한 연결이 끊어져서 서비스 호출이 실패한 것처럼 보입니다.silverlight에서 서버에 대한 연결을 닫는 방법을 감지하는 방법 3

보안상의 이유로 로그 아웃되는 것처럼 보일 수도 있지만 이것은 잘 이해할 수있는 영역이 아닙니다. 우리는 보안을 위해 암호화 된 토큰을 만들기 위해 연합 STS를 사용하고 있습니다.

내 설명이 명확하면 어떻게되는지 설명 할 수 있습니까? 내 Silverlight 응용 프로그램에서이 이벤트를 감지하고 다시 로그인 페이지로 리디렉션 할 수 있습니까?

도움 주셔서 감사합니다.

답변

1

WCF 서비스를 어떻게 부르시겠습니까? WCF 서비스에 대한 호출을 만들기 바로 전에 프록시 개체에 대한 연결을 만들고 열어야하며 그런 다음 연결을 즉시 닫고 싶습니다.

응용 프로그램의 시작 부분에 연결을 설정하지 마시고 작업이 끝나면 닫으십시오. 그러면 서비스가 불필요하게 메모리에 보관됩니다. 장기 실행 서비스가 필요한 경우 Durable WCF Services을 살펴보면 메소드 호출간에 상태를 저장할 수 있습니다.

일반적으로 서비스를 무국적으로 취급하고 메서드를 사용하기 직전에 연결하고 오른쪽에서 닫는 것이 좋습니다. 이렇게하면 연결이 닫히는 등의 걱정을하지 않아도됩니다.

+0

연결을 만들고, 열고, 닫을 때 얼마나 많은 성능 저하가 있습니까? – Sako73

+0

나는 sako가 확실하지 않다 - 나는 프로파일을 작성하지 않았다. 서버 리소스를 묶는 것보다 낫다. 수백 또는 수천 명의 클라이언트가 있다면 리소스를 소비하는 수백 또는 수천 개의 오픈 서비스가 될 것입니다. 필요에 따라 자원을 소비하는 것이 훨씬 낫다고 생각됩니다. –

관련 문제