Windows Server 2003에서 IIS 6.0으로 호스팅되는 여러 웹 사이트가 있습니다. 그 중 일부는 .Net 1.1 프레임 워크를 사용하고 다른 일부는 .Net 2.0을 사용합니다. 현재 각 프레임 워크마다 응용 프로그램 풀이 설정되어 있습니다. 추가 응용 프로그램 풀을 추가해야하는 다른 이유가 있습니까?
답변
그렇습니다.
- AppPools는 다른 ID로 실행될 수 있으므로이 방법으로 권한을 제한 할 수 있습니다.
- 작업 관리자를 실행할 때 어떤 w3wp.exe가 어떤 것인지 알 수 있도록 각 앱 풀에 서로 다른 ID를 할당 할 수 있습니다.
- 다른 앱 풀에서 실행중인 사이트에 영향을주지 않고 하나의 앱 풀을 재활용 / 다시 시작할 수 있습니다.
- 메모리 누수가 있거나 일반적으로 오작동하는 웹 사이트가있는 경우 다른 웹 사이트에 영향을 미치지 않도록 앱 풀에 배치 할 수 있습니다
- 예를 들어 사진 크기 조정과 같이 CPU를 많이 사용하는 웹 사이트가있는 경우 자체 앱 풀에 배치하고 CPU 사용률을 조절할 수 있습니다
- 각각 고유 한 SQL 데이터베이스가있는 여러 웹 사이트가있는 경우 web.config에 사용자 이름 / 암호를 저장하는 대신 활성 디렉토리 인증을 사용할 수 있습니다.
답변
다음과 같은 측면에서 IIS 응용 프로그램 풀을 만들고 별도의 앱을 만듭니다.
- 미션 크리티컬 한 앱 에는 자체 앱 풀이 있습니다. 이렇게하면 문제가있는 애플리케이션에서 앱을 격리 할 수 있습니다. 개별 구성이 가능하며 문제가있는 경우 더 쉽게 모니터링하거나 문제를 해결할 수 있습니다.
- 유형별로 앱 분리 : 언어 / 기술 별 풀링 또는 .NET 프레임 워크 버전. 동일한 풀에서 ASP.NET을 클래식 ASP와 혼합 할 수 있지만 ASP와 ASP.NET이 같은 풀에 있고 ASP 응용 프로그램에 문제가있는 경우 작업자 프로세스 인 ASP를 다시 시작해야합니다. NET 응용 프로그램도 재활용됩니다.
- 문제가있는 앱 (예 : 메모리 누수가 있거나 CPU 사용량이 많은 앱, 데이터베이스 연결 누수 등)은 일반 앱과 분리되어 있습니다. 새로운 앱은 가동 시간과 성능을 모니터링하는 “유예 기간”풀에 들어갑니다. 앱이 시간이 지남에 따라 안정적인 것으로 판명되면 일반 앱의 풀로 이동합니다. 그렇지 않으면 격리 된 상태로 유지됩니다. 이를 통해보다 문제가없는 앱을 그룹화 할 수 있습니다.
답변
또한 보안상의 이유로 Portmans의 답변 외에도. 풀에 대한 리소스 액세스 제한 http://blogs.iis.net/tomwoolums/archive/2008/12/17/iis-7-0-application-pools.aspx 참조