IIS 웹 서버 개요

IIS 팀, 마이크 볼로다르스키

호환성

버전 참고
IIS 7.0 이상 이 문서에 설명된 기능은 IIS 7.0에서 도입되었습니다.
IIS 6.0 이하 이 문서에 설명된 기능은 IIS 7.0 이전에는 지원되지 않았습니다.

IIS 7 이상 웹 서버에는 세 가지 주요 이점을 제공하는 완전히 모듈식 아키텍처가 있습니다.

  • 구성 요소화
  • 확장성
  • ASP.NET 통합

구성 요소화

이제 모든 웹 서버 기능이 독립 실행형 구성 요소 로 관리되므로 쉽게 추가, 제거 및 바꿀 수 있습니다. 이렇게 하면 이전 버전의 IIS에 비해 몇 가지 주요 이점이 있습니다.

  1. 공격 노출 영역을 줄여 서버를 보호합니다. 노출 영역을 줄이는 것은 서버 시스템을 보호하는 가장 강력한 방법 중 하나입니다. IIS를 사용하면 사용되지 않는 모든 서버 기능을 제거하여 애플리케이션의 기능을 유지하면서 가능한 최소 노출 영역을 달성할 수 있습니다.
  2. 성능을 개선하고 메모리 공간을 줄입니다. 사용하지 않는 서버 기능을 제거하면 서버에서 사용하는 메모리 양을 줄이고 애플리케이션에 대한 모든 요청에서 실행되는 기능 코드의 양을 줄여 성능을 향상시킬 수도 있습니다.
  3. 사용자 지정/특수 서버를 빌드합니다. 특정 서버 기능 집합을 선택하면 에지 캐싱 또는 부하 분산과 같은 애플리케이션 토폴로지 내에서 특정 기능을 수행하는 데 최적화된 사용자 지정 서버를 빌드할 수 있습니다. 사용자 지정 기능을 추가하여 새 확장성 API를 기반으로 빌드된 사용자 고유 또는 타사 서버 구성 요소를 사용하여 기존 기능을 확장하거나 바꿀 수 있습니다. 구성 요소화된 아키텍처는 IIS 커뮤니티에 장기적인 이점을 제공합니다. Microsoft 내부 및 타사 개발자 모두에 필요한 새 서버 기능을 쉽게 개발할 수 있습니다.

또한 IIS는 애플리케이션 풀을 사용하여 IIS 6.0에 도입된 강력한 HTTP 프로세스 활성화 모델을 구성했습니다. HTTP 프로세스 활성화 모델은 모든 프로토콜을 통해 요청 또는 메시지를 수신하는 웹 애플리케이션 이상에서 사용할 수 있습니다. 이 프로토콜 독립 서비스를 WAS(Windows Process Activation Service)라고 합니다. WCF( Windows Communication Foundation )는 WAS의 기능을 활용할 수 있는 프로토콜 어댑터와 함께 제공되어 WCF 서비스의 안정성과 리소스 사용을 개선합니다.

확장성

개발자는 IIS의 모듈식 아키텍처를 활용하여 기존 웹 서버 기능을 확장 또는 대체하고 IIS에서 호스트되는 웹 애플리케이션에 가치를 추가하는 강력한 서버 구성 요소를 빌드할 수 있습니다.

IIS용으로 개발해야 하는 이유는 다음과 같습니다.

  1. 웹 애플리케이션의 역량을 강화합니다. IIS를 확장하면 웹 애플리케이션이 대부분의 경우 애플리케이션 계층에서 쉽게 제공할 수 없는 기능을 활용할 수 있습니다. 개발자는 IIS ASP.NET 또는 네이티브 C++ 확장성을 사용하여 사용자 지정 인증 체계, 모니터링 및 로깅, 보안 필터링, 부하 분산, 콘텐츠 리디렉션 및 상태 관리와 같은 모든 애플리케이션 구성 요소에 대한 가치를 추가하는 솔루션을 빌드할 수 있습니다.
  2. 더 나은 개발 환경. 새로운 C++ 확장성 모델은 이전에 ISAPI 개발을 괴롭혔던 대부분의 문제를 완화하여 강력한 서버 코드 작성을 촉진하는 간소화된 개체 지향 API를 도입했습니다. 또한 Visual Studio 통합이 향상되면 IIS용 개발 환경이 더욱 향상됩니다.
  3. ASP.NET 전체 기능을 사용합니다.ASP.NET 통합 을 사용하면 ASP.NET 2.0 및 풍부한 ASP.NET 애플리케이션 서비스의 친숙한 인터페이스를 사용하여 서버 모듈을 빠르게 개발할 수 있습니다. ASP.NET 모듈은 ASP, CGI, 정적 파일 및 기타 콘텐츠 형식에 서비스를 균일하게 제공할 수 있으며 이전 버전의 IIS에 있는 제한 없이 서버를 완전히 확장할 수 있습니다.

ASP.NET 통합

IIS를 사용하면 웹 애플리케이션이 ASP.NET 2.0의 강력한 기능과 확장성을 완전히 활용할 수 있습니다. 양식 기반 인증, 멤버 자격, 세션 상태 등의 ASP.NET 기능을 모든 유형의 콘텐츠에 사용할 수 있으므로 전체 웹 애플리케이션에서 통합된 환경을 제공할 수 있습니다. 개발자는 친숙한 ASP.NET 확장성 모델과 풍부한 .NET API를 사용하여 네이티브 C++ API를 사용하여 작성된 것만큼이나 강력한 IIS 서버 기능을 빌드할 수 있습니다.

아래 링크를 사용하여 IIS 구성의 측면을 학습하고, IIS.NET 즉시 사용할 수 있는 리소스를 사용하여 키트를 시작하고 다운로드하는 방법에 대한 랩을 참조하세요.

학습 시작

시작

  • Windows Server 2008 R2 Evaluation Edition 및 Virtual Labs(https://www.microsoft.com/server-cloud/windows-server/2008-r2-trial.aspx)

다운로드