2011-12-16 3 views
3

wcf 프로그래밍을 처음 사용하며 작은 프로젝트에서 작업 중이며 net.tcp 포트 공유에 문제가 있습니다. 저는 .net framework 4와 iis 7을 사용하고 있습니다.IIS 7/WAS의 WCF net.tcp 포트 공유

저는 IIS에서 별도의 웹 사이트에 두 개의 wcf 서비스 (serviceA와 serviceB)가 호스팅되어 있습니다. 각 웹 사이트에는 자체 .svc 파일 web.config 및 bin이 있습니다. 만약 내가 각 net.tcp 다른 포트에 이러한 서비스가 다음 아무런 문제가 없으며 내 PC의 Visual Studio에서 각 서비스 참조를 추가 할 수 있습니다. 서비스는 정상적으로 실행됩니다.

그러나 우리는 곧 더 많은 서비스를 제공하는 프로젝트를 시작하게 될 것이며 우리는 각 포트마다 tcp 포트를 열지 않아도되므로 serviceA와 serviceB를 포트 공유로 설정하려고합니다. 나도 같은 포트를 설정 한 경우, 나는 추가 첫 번째 서비스에 액세스 할 수 있습니다하지만 난에 액세스하려고 할 때 때 두 번째 서비스는 내가 다음과 같은 오류 얻을 같은 포트에 추가 :

Metadata contains a reference that cannot be resolved: 'net.tcp://myserver/serviceB.svc'. The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was **. An existing connection was forcibly closed by the remote host If the service is defined in the current solution, try building the solution and adding the service reference again.

내가 작동하지 않을 수 있습니다 밖으로 잘못되고있다. 나는 주제에 검색하는 많은 일을하고 난 다음 서비스가 실행 중인지 확인 만든 :

Windows 프로세스 활성화 서비스 Net.Tcp 포트 공유 서비스 Net.Tcp Listener 어댑터

을 또한 그물에서 .tcp는 웹 사이트의 고급 설정에서 활성화 된 프로토콜입니다. 현재 가장 좋은 추측은 IIS 관리자에서 net.tcp 바인딩을 정의한 방법과 관련이있을 수 있다는 것입니다. 808 : * (net.tcp)이 맞습니까?

앞에서 말했듯이 두 개의 개별 포트에 설정하면 TCP 서비스가 제대로 실행되므로 문제는 포트 공유와 관련되어야합니다. 어떤 조언을 주셔서 감사합니다

답변

3

확인 문제가 발생했습니다. IIS에서 저는 각 웹 사이트를 자체 웹 사이트로 설정하고 다른 웹 사이트를 포트 공유에 연결하려고했습니다. 이것은 효과가 없을 것입니다.

그러나 웹 사이트를 하나만 설정하고 웹 사이트에 seaprate 응용 프로그램을 추가하면 포트 공유가 작동한다는 것을 알았습니다. 이 접근 방식을 통해 한 웹 사이트에서 여러 서비스를 응용 프로그램으로 사용할 수 있습니다.