문제

내가 이해 한 것처럼 3 개의 계층화 된 아키텍처는 각 관심사에 대해 별도의 프로젝트를 의미한다고 말할 수 있습니다.이러한 계층,비즈니스 계층 및 데이터 계층.그리고 그 반대도 마찬가지입니다.즉,유지 보수성에 대한 좋은 우려의 분리 아이디어는 합리적이다.하지만 다른 한편으로는,계층은 계층과 다릅니다.즉,계층은 기계/네트워크와 직접 관련이 있습니다.나는 우리가 말할 때 의미 2 계층,그것은 일반적으로 클라이언트 컴퓨터와 데이터베이스 서버 기계입니다.우리가 말할 때 3 계층,그것은 일반적으로 클라이언트 기계,응용 프로그램 서버 기계 및 데이터베이스 서버 기계.따라서 이러한 정보 측면에서 3 계층 아키텍처를 사용하는 2 계층 응용 프로그램을 개발할 수 있습니다.

지금까지,나는 사용했다 3 층 그러나 우리가 개발해야하는지 여부를 결정하는 시간이다 3 계층 또는 2 계층.이 분야에는 윈도우 폼 프로젝트가 있을 것이고,약 150 개의 클라이언트와 100 개의 핸드 터미널이 윈도우 폼 프로젝트를 사용하고 웹 서비스를 통해 통신할 것입니다.손 단말기에서,그것은 최고의 솔루션은 세 가지 계층을 사용하는 것이 분명하지만 윈도우 7 에서 실행됩니다 윈도우 클라이언트에 대한,우리가 하나의 응용 프로그램 서버를 통해 데이터베이스와 이야기하거나 직접 데이터베이스에 연결해야하는지 여부를 결정하기 어렵다.

주요 질문은 2 계층을 통해 3 계층 아키텍처의 이점은 무엇입니까?나를 위해 하나 이상의 계층은 오버 헤드 일 수있는 모든 시간을 가동하고 실행해야하는 하나 이상의 서버/호스트/시스템을 의미합니다.

최고의 계층 아키텍처를 선택하기 위해 우리를 안내하십시오.

도움이 되었습니까?

해결책

그렇지 않으면 데이터베이스 플랫폼을 실행하는 데 사용할 수있는 리소스를 소비하는 응용 프로그램 서버에서 몇 가지 주요 작업을 수행 할 경우에만'3 계층'(클라이언트,응용 프로그램 서버 및 데이터베이스 서버)을 사용하는 것이 좋습니다.예를 들어 응용 프로그램(비즈니스 계층)과 데이터베이스 서버(데이터 계층)사이에서 실행되는 연결 풀링 또는 연결 관리 소프트웨어입니다.

다른 팁

이 구성 요소가 있다고 말할 수 있습니다:UI, Common, Biz, DAL

2 또는 3 계층 응용 프로그램 개발에서는 배포합니다 UI 그리고 Common 시작 client 그리고 Common, Biz , DAL 시작 server (주의 공통 둘 다에 배포됩니다)그리고 당신은 당신의 사업을 통해 연결하려고합니다 .Net Remoting 또는 WCF 마지막으로 마지막 계층의 서버 또는 다른 서버에있을 수 있습니다.

나는 이것이 도움이되기를 바랍니다

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top