본문 바로가기

WCF

Window Server AppFabric에서 WCF호스팅 하기

http://www.dotnetcurry.com/ShowArticle.aspx?ID=771 위의 글을 퍼왔습니다.
윈도우 서버 AppFabric에서 WCF 서비스 호스팅하기  호스팅

Microsoft.NET를 사용하여 분산 서비스 지향 애플 리케이션을 개발하는 경우, WCF를 사용하는 것이 좋습니다. WCF는 다양한 프로토콜의 예 : HTTP, TCP, MSMQ 등을 통해 통신할 수 있으며 보안 통신 메커니즘을 필요로하는 애플 리케이션을위한 훌륭한 선택입니다.

개발자들이 직면한 문제들 중에 가장 큰 이슈는 WCF서비스가 호스팅되는 것을 어떻게 모니터링할것인가이다. 응용 프로그램이 배포되면, 서비스가 호출될때 일어나는 예외상황이나 퍼포먼스를 체크하는 것은 가장 중요한 것들 중에 하나이다.  이러한 일을 가능하게하기 위해, Windows Server AppFabric이라는 새로운 호스팅 환경을 제공합니다.

윈도우즈 서버의 확장으로 Windows Server AppFabric는 미들티어로 된 WCF서비스에 진보된 호스팅, 모니터링 캐쉬기능 들을 제공합니다. 이것은 IIS 웹 서버 (버전 7)확장입니다. 그리고 .NET Framework를 4.0을 필요로합니다. 또한 호스팅서비스들과 쉽게 배포할수 있는 툴 서버시 설정및 모니터링등의 기능이 있습니다.

Windows Server AppFabric는 2개의 런타임 데이터베이스를 제공합니다. -모니터링 스키마 및 지속성 스키마
- 모니터링 스키마는 WCF나 WF가 호스팅되는 서비스들을 모니터링합니다.
- 지속성 스키마는 Workflow가 실행되는 상태를 저장합니다.

AppFabric을 설치한후에 , Monitoring과 Persistence 를 설정해야하고 이 작업을 수행하는 동안 데이터베이스를 생성하는 작업이 필요합니다.  아래는 시스템에 필요한 환경입니다. 
  • 윈도우 서버 2008 32 또는 64 비트. 아니면 윈도우 7 32 또는 64 비트.
  • IIS 7.x의
  • SQL 서버 2008 (R2 더입니다.)
  • MS.NET 4.0
AppFabric를 설치하는 동안, 관리자 권한이 필요합니다. 여기에서 Windows Server AppFabric을 다운로드받을 수 있습니다(설치가능한것을 선택해 주세요)

AppFabric 설치 후에는 다음과 같이 모니터링 및 지속성에 대한 구성 마법사를 실행해야합니다.

AppFabric 마법사

. NET 4.0를 타겟으로 IIS 7 웹 사이트를 만듭니다. 아래의 링크처럼 유사한 단계를 볼수 있습니다.

SSL과 함께 IIS 7.5에서 호스팅하는 WCF 4.0 서비스는 (그냥 SSL 설정을 무시, 나머지는 동일하게 유지)
 
AppFabric를 사용하여 IIS 7 및 모니터링에서 호스팅되는 WCF 서비스 만들기

1 단계 : 오픈 VS2010와 WCF 서비스 응용 프로그램을 만듭니다. Service.svc에 IService.cs 및 Service1.Svc에 IService1.cs 이름을 바꿉니다. IService.cs를 열고 아래 ServiceContract와 DataContract를 추가합니다.

영상

2 단계 : Service.svc.cs 열고 그 안에 다음 코드를 추가 :

영상

3 단계 : 아래와 같은 마크업에서 Service.svc 변경 :

<%@ ServiceHost Language="C#" Debug="true" Service="WCF_DbService.Service" CodeBehind="Service.svc.cs" %>

4 단계 : WCF 응용 프로그램에서 마우스 오른쪽 버튼으로 클릭하고 등록 정보로 가서 패키지를 선택 / 웹 게시, 'Zip 파일로 배포 패키지 만들기'있는지 확인하십시오. 이 배포 패키지가 저장되는 Zip 파일의 위치를 지정합니다. 또한 아래와 같이 대상 호스트 서버에서 웹 사이트 이름을 지정합니다 :

AppFabric

5 단계 : IIS열고, 웹사이트에 오른쪽 마우스를 클릭하고 Select Deploy > Import Application를 아래와같이 선택하세요

AppFabric 배포

6 단계 : 아래의 패키지 경로를 선택하고 다음을 누릅니다 :

AppFabric 패키지

7 단계 : 다음 단계는 패키지의 내용을 보여줍니다,  선택을 유지하고 다음을 클릭하십시오 :

가져오기 응용 프로그램 패키지

응용 프로그램 경로는 아래와 같습니다 :

clip_image010

웹 응용 프로그램이 아래와 같이 만들어집니다.

응용 프로그램 원단 IIS

표시된 영역은 'WCF_DbService_deploy_new'와 AppFabric 대시보드의 이름으로 만든 웹 응용 프로그램을 나타냅니다.

8 단계 : '콘텐츠보기'에서 Service.Svc 파일을 검색하여 브라우저에서 WCF 서비스를 엽니다. 결과는 아래와 같습니다.

WCF 서비스

9 단계 : NET 명령 프롬프트로 이동하여 명령줄에 다음을 입력합니다 - 'WCFTestClient.. 아래와 같이 기본 클라이언트 테스트를 제공합니다 :

WCF 테스트 클라이언트

10 단계 : ‘My Service Projects’에 오른쪽 마우스를 누르고 종단점을 입력합니다.

WCF의 종점 주소

아래와 같이 서비스의 종단점 정보를 얻을 것입니다.

WCF의 종점 주소

단계 11 :  'GetDepartments을 ()'메소드를 더블클릭하면 아래와 같이 나올 것입니다.

WCF의 종점 주소

아래와 같이와 데이터베이스에  'Company’를 입력하고 호출을 클릭, 결과는 응답 부분에 표시됩니다 :

clip_image024

단계 12 : 생성한 Application을 선택하고 ‘AppFAbric DashBoard’를 클릭하세요 그럼 아래와 같이 결과가 타올겁니다.

clip_image026

붉은 표시된 영역은 WCF 서비스 모니터링 통계가 표시됩니다.  ‘Completed’를 클릭하면 트랙 이벤트Windows가 나타납니다. 이 창은 아래와 같은 호출의 간략정보를 표시합니다.:

추적 이벤트

'WCFTestClient'를 사용하여 어떤 잘못된 값을 입력하면 예외가 발생되며 AppFabric에 오류 요약은 다음과 같이 표시됩니다 :

AppFabric 추적 이벤트

결론 : 윈도우 서버 AppFabric은 효과적인 응용 프로그램 관리를 위해, WCF 및 WF 서비스를 모니터링하는 관리자가 있어야합니다.