2010-06-03 3 views
0

CAG 설명서의 모든 퀵 스타트 및 RI 예제가 좋지만 Enterprise scale 예제가 부족합니다.엔터프라이즈 규모 복합 응용 프로그램 (CAG) 구성 방법

각 모듈에는 프록시, Facade, PresentationModel, Model 및 Views가 포함 된 40 개 이상의 모듈이 있다고 가정 해 보겠습니다. 또한 각 모듈은 IIS 또는 독립 실행 형 콘솔 호스트에서 호스팅 될 모듈 별 WCF 서비스를 호출합니다. 우리의 접근 방식은 UI 모듈, 서비스 모듈 및 관련 테스트를 하나의 솔루션에 포함시켜 다른 모듈과 별도로 개발 및 테스트 할 수 있도록하는 것이 었습니다.

내 문제는 서비스가 별도의 모듈에있을 때 서비스 호스팅을 수행하는 방법과 F5 키를 누를 때 나머지 응용 프로그램 모듈과 함께 별도의 모듈을 실제로 실행하는 방법입니다. 이것에 대한 모범 사례가 있습니까? 나는 그것이 이전에 끝났다고 생각해?

답변

1

우리는 호스팅 프로젝트를 솔루션의 "시작"프로젝트로 포함시키는 매우 간단한 솔루션으로 끝 맺었습니다. 프로젝트는 모듈을 빌드하지 않고 종속성을 갖도록 설정됩니다.

모든 서비스 DLL은 호스트 프로젝트가 동적으로로드하는 공통 폴더로 출력되고 ServiceContract 특성을 찾고 호스트를 시작합니다.

1

각 모듈을 서비스 지점의 응용 프로그램 또는 가상 디렉터리 인스턴스로 호스팅 할 수는 있지만 솔루션 파티션의 개발 "편의성"을 허용하여 서비스의 프로덕션 아키텍처를 결정할 수 있습니까? 일반적으로 모듈 파티션이 아닌 레이어를 기반으로 처리했습니다. 즉, 도메인/모델이있는 프로젝트와 서비스가있는 프로젝트가있는 경우 각 "모듈"이 공통 서비스 풀을 참조 할 수 있습니다. 상호 연관 모듈의 양, 상호 통신의 정도 등에 따라 다릅니다.

각 서비스는 다른 포트 또는 대상에서 실행되도록 구성 할 수 있지만 다시 한 번 귀하의 문제는 서비스를 제공하고 모듈을 통해 공유되는 공통 서비스 프로젝트를 통해 이익을 얻을 수 있습니다.

+0

"모듈"을 만드는 우리의 1 위 목표는 개발 및 지속적인 테스트를 위해 턴 시간을 줄이기 위해 독립적으로 개발하고 테스트 할 수있는 수직 계열을 원합니다. 개발 중에 오늘날 우리는 호스팅을 위해 IIS를 사용하지 않고 있지만 앞으로 나아갈 길이라고 생각합니다. 그런 다음 솔루션은 빌드하고 솔루션을 실행하고 IIS가 가리키는 폴더에 파일을 배포하기 만 할 때마다 새로운 "콘솔 호스트"를 시작해야 할 책임이 없습니다. – David

관련 문제