2014-09-23 5 views
0

다음과 같은 실제 아키텍처가 있습니다..Net WCF 내부 및 외부 웹 서비스를 분리하는 방법

웹 프런트 엔드는 방화벽이있는 DMZ 환경에서 실행됩니다.

WCF 서비스 계층은 다른 방화벽이있는 DMZ 환경에서 실행됩니다.

BizTalk ESB 계층은 핵심 LAN에서 실행됩니다.

백 오피스 서비스 응용 프로그램 계층도 핵심 LAN에서 실행됩니다.

WCF 계층은 UI와 ESB/백 오피스 계층 간의 브리지입니다. > 판매 net.tcp 이상

그래서, 이것이 우리의 외부 및 내부 서비스에 대해 서로 다른 엔드 포인트가 필요합니다 -

UI는 -

WCF < HTTPS를 통해> WCF이다.

질문은 어떻게 그들을 분리하는 것이 가장 좋은가요?

1) 내부 및 외부 엔드 SVC는 클래스 및 2 개 개의 엔드 포인트 구성 내외부 엔드

답변

1

위한

2

)은 WCF 프로젝트 각각의 혼합물을 갖는 Web.config의 단일 WCF 프로젝트 나는 1을 고수 할 것입니다.

서비스 계약이있는 프로젝트 하나와 인증/방화벽 문제를 해결할 필요가 있는지 여부에 따라 해당 계약의 구현이 다릅니다.

서로 다른 구현에는 서로 다른 이름과 주소 바인딩 및 선택된 서비스 구현이 있습니다.

인프라 레이아웃과 관련하여 선택할 서비스 구현과 같은 인프라 관련 문제를 해결하는 다른 프로젝트가있을 수 있습니다.