2012-07-04 2 views
1

나는 C#과 WCF가 상대적으로 녹색이다. Windows 서비스로 실행되는 자체 호스팅 WCF 서비스를 만드는 프로젝트에 착수했지만 이러한 서비스를 모두 관리하는 것이 번거로울 수 있으므로 대신 IIS를 사용해야하는지 궁금해지기 시작했습니다.WCF - 자체 호스팅 또는 IIS 환경 설정?

최선의 노력에도 불구하고 왜 내가 다른 접근법보다 한 가지 방법을 선호하는지에 대한 확실한 정보를 찾지 못했습니다. 이 서비스는 주로 이미지 크기 조정, 파일 검색과 같은 유틸리티 작업에 사용되며 C# 및 Java 클라이언트 모두에서 호출됩니다.

감사합니다.

답변

1

가장 짧은 대답은 것 '이 달려있다'. 귀하의 요구 사항에. 문제없이 스스로 호스트 할 수 있지만 IIS는 리소스를보다 효과적으로 관리하고 자체 호스팅보다 쉽게 ​​리소스를 미세 조정할 수 있습니다.

예를 들어, IIS에서 새 버전을 배포하거나 이전 버전을 제거하는 것이 더 간단합니다.

+1

... 그리고 그것은 w3wp의 리사이클링, 셧다운에 대해 생각하는 것이 훨씬 더 쉬울 것입니다 - 사실, 그렇지 않습니까 :) –

+1

다른 한편으로는 : (1) 당신은 아마도 거래해야합니다. IIS 중단 및 응용 프로그램 풀 재활용과 (2) 첫 번째 요청이 들어 오면 IIS가 'ServiceHost'를 시작합니다. - 시간이 오래 걸리며 자체 호스팅 할 때 발생하지 않습니다. 'ServiceHost'를 열어서 계속 실행) –

+0

@marc_s, 사실, 대답 할 때 나는 이것을 생각하지 않았습니다. 그러나 perf. 조회는 첫 번째 요청 동안에 만 이루어집니다. –

0

어느 쪽이든 상관 없습니다.

일반적으로 기본 제공 IIS 호스팅 기능을 사용하면 배포 및 구성을보다 간단하게 수행 할 수 있습니다. http.sys의 정품 인증 모델도 있습니다. 즉, 적절한 메시지가 도착하면 IIS가 필요한 프로세스를 시작합니다.

자체 플랫폼 또는 IIS 호스팅 여부와 관계없이 모든 플랫폼의 클라이언트가 WCF 서비스에 연결할 수 있습니다.

추신 : how to allow IIS-hosted WCF services to store their configuration data in distinct xxx.config files

+0

당신은 호스트로 IIS에 묶여 있습니다 - 당신은 wcf 서비스를 시작시에 거대한 데이터 세트를 읽는 데이터 저장소로 사용하지 않는 한 재활용, 종료 등 모든 문제를 해결해야합니다. 괜찮을거야 ... –

관련 문제