2014-11-13 3 views
1

iis 7.0에서 호스팅되는 wcf 서비스가 있습니다. 지난 1 년 동안 잘 작동했지만 갑자기 충돌이 발생하고 몇 분마다 다시 시작됩니다. 추적 파일을보고 오류가 표시되지만 의미가 무엇인지 알 수 없습니다. 나는 그것을 시험해 보았다. 그러나 어떤 운도 시험해 보지 않았다. IIS의 설정을 확인했습니다. 괜찮아 보인다.WCF 4.0 서비스가 충돌합니다.

내 추적 모습입니다. 누군가가이 흔적을 이해하도록 도와 줄 수 있으면 좋을 것입니다.

enter image description here

+0

오류는 매개 변수가 어딘가에 있다고합니다. 스택 추적을보고 그것이 발생한 줄을 알려주는지 확인하십시오. – Tim

+0

null 참조 예외가 있어도 왜 모든 서비스가 중단되고 다시 시작됩니까? –

답변

1

이 순수 가정이지만, 지금까지 나는 당신의 흔적을보고 생각하고 쓴 :

  • 을 당신은 net.pipe WCF 호스트

  • 를 사용하는
  • 호스트의 끝점 주소는 net.pipe://tstwebashitv...이므로, net.pipe://localhost/... 형식을 사용하지 않습니다 (tstwebashitv는 서버 이름이 아니고 인터넷은 가정). 파이프 서비스는

그래서 내가 다른 명명 된 파이프 WCF 호스트가 동일한 시스템에서 실행 가능성이 있다고 가정 오랫동안 작동하는 데 사용하고, 충돌이 발생할 수 있습니다

  • ) 원격 아니다 .

    • 이 형식에서 net.pipe 엔드 포인트 adresses 유무 : : 대신 net.pipe://somethingnet.pipe://localhost/something을 나는 그 점을 확인하시기 바랍니다

      는 그입니다.

    • NetNamePipeBinding 섹션의 설정을 확인하십시오. 실행중인 호스트가 주소가 지정된 메시지를 수신하도록하려면 Exact으로 설정하는 것이 좋습니다. HostNameComparisonMode이 설정되지 않은 경우

    기본적으로 다음 StrongWildcard 기본 모드를 사용하고, net.pipe 주소의 호스트 이름은 삭제됩니다.

    net pipe 주소가 'net.pipe : // something'로 설정되어 있으면 "something"이 서버 이름으로 간주되어 무시됩니다. 그렇게 여러 호스트가 충돌 할 수 있습니다.