2009-03-19 3 views
0

우리는 하루에 몇 번 (Windows 서비스를 통해) 실행되는 프로세스가 있으며 관리자 수준의 사용자 (웹 응용 프로그램을 통해)가 언제든지 호출 할 수 있습니다. 이 프로세스는 웹 서비스를 통해 파트너로부터 데이터 세트를 가져온 다음이 데이터를 자체 형식으로 로컬 복사본과 병합합니다. 충분히 간단합니다.타사 웹 서비스를 응용 프로그램 디자인에 적용

내 질문은 어떻게 우리의 응용 프로그램 디자인에 맞는 것입니다. 우리는 우리의 도메인 객체를 다루기 위해 저장소와 상호 작용하는 상당히 직선적 인 애플리케이션 서비스 계층을 가지고있다. 도메인은 지속성을 모르고 있습니다.

이 프로세스는이 아키텍처에 어떻게 적합해야합니까? Do we do

  1. 대부분의 로직을 응용 프로그램 서비스에 넣으시겠습니까? 써드 파티 서비스를 호출하고 저장소에서 로컬 객체를 가져 와서 업데이트/추가/etc를 수행 한 다음 저장소에 다시 저장하십시오. 기본적으로 타사 서비스를 다른 저장소로 취급하십시오.
  2. 응용 프로그램 서비스에서 로컬 데이터를 가져오고 (지금은 데이터 볼륨에 대해 걱정하지 마십시오.) 타사 서비스를 호출 할 도메인 수준 서비스로 전달하고 필요에 따라 데이터를 병합 한 다음 새 데이터 집합을 app 서비스를 사용하여 저장소에 커밋 할 수 있습니까?
  3. 다른 옵션 ...

답변

0

내가 원격 서비스 게이트웨이 "패턴"을 시도 할 것입니다.
아래는 Ajax의 관점에서 볼 때 컨셉에 대한 링크입니다. 프로세스가 아닙니다. 그러나 2006 년 Dobbs Architecture and Design 세계에서 처음으로 개념을 보았을 때,이 예는 귀하의 사례와 매우 흡사했습니다.

http://blog.ontheheap.com/2008/06/06/ajax-and-the-service-gateway-pattern/

링크의 예는 기초를 제공합니다. 이 경우 번역 할 필요가 없습니다. 그러나 게이트웨이는 변환 레이어 또는 데이터 병합 레이어를 포함하도록 여러 부분으로 나눌 수 있습니다.

나는이 접근법으로 성공을 거두었습니다.

관련 문제