2012-02-23 2 views
2

안녕하세요, 저는 기존의 3 계층 응용 프로그램 (프레젠테이션 레이어, 비즈니스 레이어 및 데이터 레이어)을 Windows Azure 프로젝트로 변환하는 작업을 할당 받았습니다.Azure에서 3 계층 응용 프로그램 아키텍처가 가능합니까?

기본적으로 웹 역할을 만들고 프레젠테이션 레이어를 만든 다음 각각 별도의 2 개의 클래스 라이브러리 (각각 비즈니스 및 데이터 레이어) 프로젝트를 만들고 참조를 사용하여 프레젠테이션 계층에 연결했습니다. 나는 푸른는 웹 역할 (프리젠 테이션 계층)에서 응용 프로그램을 전개 그러나

이 업로드되었습니다 :/

My current 3 tier architecture that isnt working properly with azure

경우 누군가가 말해 줄 수 : 그것은 심지어 가능하다

  1. azure로 3 단계 아키텍처를 사용하십시오
  2. 프로젝트를 참조 할 때 실수로 작성한 경우
  3. 이것이 b 달성 된 것은 3 티어와 유사한 아키텍처입니다.

고마워요!

답변

1

누락 된 참조 정보 : 프로젝트에 직접 추가 한 모든 참조에 대해 "로컬 복사"를 설정해야합니다. 이렇게하면 이러한 모든 참조가 패키지화되고 클라우드에 배포 될 때 프로젝트에 활용할 수 있습니다.

프레젠테이션 및 비즈니스 계층 정보 : - 응용 프로그램에서 웹 및 작업 역할이있는 경우 내부 끝점을 사용하는 것만으로 응용 프로그램을 실행하는 두 개의 별도 VM을 얻을 수 있습니다. Windows Azure에서 응용 프로그램을 실행할 때 웹 역할에 웹 프런트 엔드와 백그라운드 처리 코드를 둘 수 있으므로 두 가상 컴퓨터 (필요한 경우)에 코드를 분리해야하는 이유를 생각해보십시오. 작업자 역할은 다음과 같습니다. 사전 구성된 IIS가없는 VM뿐입니다. web 프론트 엔드가 아닌 .net 응용 프로그램의 대부분은 작업자 역할을 프론트 엔드로 사용하므로 응용 프로그램을 설계하여 웹 역할과 작업자 역할을 선택해야합니다.

0

Azure는 Windows Server 2008 컴퓨터 모음입니다. 원하는대로 솔루션을 배포 할 수 있습니다. 일반적으로 웹 롤은 웹 계층 (프론트 엔드)에 사용되고 작업자 역할은 백엔드에 사용됩니다. 데이터베이스 또는 데이터 저장소가 마지막 계층입니다.

+0

내 프레젠테이션 계층은 웹 역할이어야하며 비즈니스 계층은 작업자 역할이어야하며 데이터 계층 (SQL Azure에 연결됨)은 다른 작업자 역할이어야하며 그 다음 연결해야합니다. 그들을 통해 참조를 통해? –

+0

Azure 서비스 버스/WCF/Azure 대기열 또는 생각할 수있는 다른 통신 채널과 연결할 수 있습니다. – Peter

+0

별도의 작업자 역할을 수행하지는 않습니다. 웹 역할은 IIS가 설치된 VM입니다. 백그라운드 프로세스, Windows 서비스를 실행할 수 있습니다. 전통적인 서버에서 실행할 수있는 모든 것을 하나의 역할로 수행 할 수 있습니다. 웹 프로젝트에서 해당 데이터 레이어를 참조하는 경우 데이터 레이어 DLL이 사이트와 함께 배포됩니다. 그런 다음 연결 문자열을 SQLAzure (또는 웹에서 사용할 수있는 SQL Server)로 지정하면 경주가 끝납니다. –

1

하늘빛이 할 수 있습니다. 문제는 논리적 또는 물리적 계층입니다. 논리적 인 경우 다른 어셈블리를 하나의 웹 프로젝트에 추가하면 웹 역할에 설치하기 만하면됩니다. 비즈니스 계층이 WCF 서비스 인 물리적 계층 인 경우 원하는 경우 다른 웹 또는 작업자 역할 또는 모든 웹 역할에서 호스팅 될 수도 있습니다.

관련 문제