2012-11-11 3 views
2

WCF 서비스에 발생할 수있는 오류를 처리하는 가장 좋은 방법은 무엇입니까? 따라서 서비스/WCF 자체에서 try/catch와 별도로, 예를 들어 시스템이 다운 된 경우 (예 : MSMQ가 클러스터 등으로 다운되었을 때) 클라이언트가 잘못하면 어떻게 될까요? 이렇게하면 WCF 서비스 호스트에 오류가 발생합니다.자체 시작 및 오류 예외

x 초 후에 안전하게 서비스를 다시 시작할 수 있습니까? 나는이 작업을 시도했지만 Abort() 이후에 새로운 ServiceHost를 만들었지 만 Faulted 상태에 들어갔을 때 통신 채널에 오류가 있거나 닫힌다는 오류가 발생합니다.

오류가있는 경우 서비스 호스트 응용 프로그램을 다시 시작하고 오류 발생 후 해당 호스트를 성공적으로 다시 설정하는 좋은 방법은 무엇을 권장 할 수 있습니까?

답변

1

Windows 서비스로 WCF 서비스를 구현하십시오. 이 경우 서버가 다시 시작되면 호스트도 다시 시작됩니다. ServiceBase에서 Windows 서비스 클래스를 상속 받아 OnStart 및 OnStop 메서드를 재정의해야합니다.

+0

감사합니다.하지만 Windows 서비스로 만드는 것은 불행히도이 프로젝트의 특성을 감안할 때 해결책이 아닙니다. –