2009-04-04 4 views
1

기본 클라이언트 - 서버 모델에는 의심스러운 인터페이스를 사용하여 구현 된 경우에도 프레젠테이션 계층, 비즈니스 계층 및 데이터 계층이 있습니다. 웹 서비스 모델을 사용하는 디렉토리 및 검색 메소드가 완전히 새로운 레이어로 간주됩니까? 나는 발견 레이어가 실제로 서비스가 발견 될 수있는 위치에 대한 정보를 포함하기 위해 데이터 레이어의 역할을 확장하고 있다고 주장 할 것이다. 웹 서비스와 MVC 프레임 워크 간의 상호 작용을 이해하는 데 어려움을 겪고 있으며 디렉토리와 검색 구성 요소가 해당 프레임 워크에 들어 맞는 위치에 대한 더 큰 그림을 이해하려고 노력하고 있습니다.webservices 모델에는 여전히 클라이언트 - 서버 모델에 기본적으로 3 단계가 있습니까?

답변

2

나는 비즈니스 계층과 프레젠테이션 계층 또는 비즈니스 계층과 데이터 계층 사이에 추가 레이어 (서비스 레이어)가 있음을 말합니다. - "클라이언트"구현. 이 계층은 전송을 위해 마샬링/언 마샬링을 포함하여 서비스 검색 및 전달을 캡슐화합니다. Fowler의 엔터프라이즈 애플리케이션 아키텍처 원칙 Service Layer 설명을 참조하십시오. 그의 개념에서 서비스 계층은 비즈니스 계층 (도메인 모델)과 표현 계층 (UI) 사이에 위치합니다. 이 개념은 씬 클라이언트 또는 웹 기반 클라이언트 구현에 적용됩니다.

+0

따라서 씩 (thick) 클라이언트는 서비스 레이어와 상호 작용하고 해당 검색 기능을 위임하지 않습니다 비즈니스 계층에? 당신의 대답은 정말로 모든 것에 초점을 맞 춥니 다. 당신은 당신의 커뮤니케이션 스타일로 선물을 가지고 있습니다. +1 및 확인 – ojblass

+0

감사. 나는 주로 웹 개발자이기 때문에 두꺼운 고객 사례에 대해 구체적인 조언을 줄 수는 없습니다. 나는 BL 외부의 발견이 BL의 적절한 공장에 발견 된 서비스의 주입과 결합되어 있다는 것을 알게 되리라 예상한다. – tvanfosson

0

웹 서비스 모델에는 기본적으로 3 계층이 없다고 말할 수 있습니다.

웹 서비스는 근본적으로 다중 계층 (n 계층) 모델을 의미 할 수있는 SOA (Service Oriented Architecture)입니다. 분산 컴퓨팅을 의미하며 수백 개의 "계층"이있는 대규모 시스템으로 확장 될 수 있습니다.

개념적으로는 데이터베이스와 비교하여 서비스에서 데이터를 가져 오는 것과 데이터베이스와 같은 소스로 제공되는 다른 데이터에서 데이터를 가져 오는 것과 비슷할 수 있다는 점, 그리고 이것이 추가로 생각할 수 있다는 점에 동의 할 것입니다 데이터 액세스 층의 기능.

물론 의미에 따라 다릅니다. 종종 "계층"은 전체 시스템 (예 : 프런트 엔드, 중간 계층, 백 엔드 데이터 원본, 웹 서비스와의 통합과 같은 다른 계층)의 개별적인 부분을 나타냅니다. "레이어"는 종종 프리젠 테이션, 컨트롤러, 비즈니스 로직, 데이터 액세스 등과 같은 코드의 수직 레이어를 나타냅니다.

관련 문제