2013-08-28 4 views
0

사람들. 이것은 "더 이상 할 수 없습니까?" "당신은 어떻게합니까?"WCF 서버 간 서비스

여러 서비스가있는 WCF 프로젝트가 있으며 모든 것이 잘 정리되어 있습니다. 그 중 두 개는 두 개의 서로 다른 서버로 이동하는 Windows 서비스 설치 관리자로 묶입니다. 두 서비스가 다른 시스템에있는 경우 한 서비스의 메소드를 다른 서비스에서 호출 할 수 있습니까? 또는 전에 사용했던 Callback 시나리오를 사용해야합니까?

의견이나 제안에 감사드립니다. 감사.

+0

그게 WCF의 요점입니다. –

답변

4

이것은 사용중인 바인딩과 두 컴퓨터간에 그리고 방화벽/네트워크 경로 규칙에 따라 다릅니다.

namedPipeBinding을 사용하는 경우 명명 된 파이프가 시스템에 바인딩되어 있으므로 대답은 no입니다. 그러나 webHttp, basicHttp 등과 같은 다른 바인딩을 사용하고 있다면 괜찮습니다. WCF의 장점은 필요한 경우 다른 바인딩을 사용하여 다른 서비스 끝점을 시작할 수 있어야한다는 것입니다. 따라서 명명 된 파이프를 사용하는 경우에도 다른 바인딩으로 바꿔야합니다.

WCF 서비스는 확실히 다른 WCF 서비스의 클라이언트 일 수 있습니다.

+0

우수합니다. 고마워요 ... 그건 제가 생각한 것입니다. 이전 코드는 DuplexChannelFactory를 사용하고 있으며 채널을 만들지 않고 직접 서비스를 호출 할 수 있다고 생각했습니다. 나는 우리 바인딩이 basicHttp라고 믿는다. 그러나 나는 확실하게 두 번 점검해야 할 것이다. –

+0

발신자 서비스에서 나는 다음과 같이하고있다 : OtherService foo = new OtherService(); ... foo.CallMethod(); 그래서 당신이 말한 바에 따르면 바인딩이 간단하다면 서버를 통해 바인딩을 수행 할 수 있어야합니다. 환상적! 이 코드를 훨씬 쉽게 업그레이드 할 수 있습니다! :-D –

+0

그래서 NetTCPBinding은 어떻습니까? 그게 우리가 사용하는거야 .... –

관련 문제