IIS 응용 프로그램이란 웹 사이트의 정의된 디렉터리 안에서 실행되는 모든 파일을 의미합니다. 응용 프로그램을 만들 때는 IIS 스냅인을 사용하여 웹 사이트에 응용 프로그램의 시작 위치 디렉터리(응용 프로그램 루트라고도 함)를 지정합니다. 웹 사이트의 시작 위치 디렉터리 아래 있는 모든 파일과 디렉터리는 다른 시작 위치 디렉터리를 만날 때까지 그 응용 프로그램의 일부로 인식됩니다. 이런 방식으로 디렉터리 경계를 사용하여 응용 프로그램의 범위를 정의합니다.
IIS 스냅인에서 응용 프로그램 시작 위치는 패키지 아이콘으로 표시됩니다. 다음 그림에서는 /SiteAdmin이라는 시작 위치 디렉터리를 가진 응용 프로그램을 보여줍니다.
\Login, \Order, \SetupDB 디렉터리에 있는 파일은 /SiteAdmin 응용 프로그램의 일부로 인식됩니다.
하나의 웹 사이트에 응용 프로그램을 여러 개 가질 수 있습니다. 인터넷 정보 서비스를 설치할 때 만들어지는 기본 웹 사이트가 응용 프로그램 시작 위치가 됩니다.
인터넷 정보 서비스는 ASP, ISAPI, CGI, IDC, SSI 응용 프로그램을 지원합니다. 응용 프로그램은 그 응용 프로그램 파일들 간에 정보를 공유할 수 있습니다. 예를 들어, ASP 응용 프로그램은 응용 프로그램의 모든 페이지에 대해 컨텍스트 흐름, 세션 정보, 변수 설정을 공유합니다.
IIS 5.1에서는 응용 프로그램 보호를 위한 세 가지 수준을 제공합니다. 응용 프로그램 보호란 응용 프로그램이 실행되는 프로세스를 말합니다. IIS 4.0에서는 응용 프로그램을 웹 서비스와 같은 프로세스(Inetinfo.exe)로 실행하거나, 웹 서비스와 별도의 프로세스(DLLHost.exe)로 실행하는 두 가지로 설정할 수 있었지만, IIS 5.0과 5.1에서는 풀링된 프로세스(DLLHost.exe의 또 하나의 인스턴스)로도 실행할 수 있게 되었습니다.
이 모든 옵션은 잘못 작동하는 응용 프로그램의 오류로 인해 그 응용 프로그램이 실행되는 프로세스의 응답이 중지되는 상황에 대해 여러 가지 보호 수준을 제공합니다. 기본적으로 웹 서비스(Inetinfo.exe)는 자체의 프로세스로 실행되며 그 밖의 응용 프로그램들은 하나의 풀링된 프로세스(DLLHost.exe)로 실행됩니다. 우선 순위가 높은 응용 프로그램은 격리된 프로세스(DLLHost.exe의 또 하나의 인스턴스)로 실행되도록 설정할 수 있습니다. 성능 상의 이유로 인해, 격리된 응용 프로그램을 10개 이상 실행할 수 없습니다.
다음 그래픽은 응용 프로그램 보호를 설정하는 속성 시트를 나타냅니다.
응용 프로그램 보호는 응용 프로그램의 시작 위치 디렉터리에서만 설정할 수 있습니다.
응용 프로그램 보호 수준과 성능 효과에는 서로 상치되는 면이 있습니다. 웹 서비스 프로세스(inetinfo.exe)로 실행되는 응용 프로그램은 성능이 좋은 만큼, 응용 프로그램이 잘못 작동할 경우 웹 서비스를 사용할 수 없게될 위험도 큽니다. 권장할 만한 구성 방법은 inetinfo.exe를 자체 프로세스로 실행하고, 중요한 업무용 응용 프로그램들은 각각 별도의 자체 프로세스로 실행하며, 나머지 응용 프로그램들은 풀링된 공유 프로세스로 실행하는 것입니다. 자세한 정보는 응용 프로그램 경계 정의를 참조하십시오.
구성 요소 서비스 관리 도구에서 구성 요소에 알맞은 프로세스 옵션을 설정할 수 있습니다. 자세한 내용은 구성 요소 서비스 설명서를 참조하십시오.