IIS의 응용 프로그램 풀이 재활용되는 원인은 무엇입니까?
나는 이것에 대한 정보를 아무 소용이없이 찾고 있었다. 내가 왜 이것이 필요한지에 대한 맥락은 내가 여기서 물 은 또 다른 질문 이다. 보다 구체적으로 App_Data에서 파일을 생성 / 업데이트 / 삭제하면 풀이 재활용됩니까?
누군가가 재활용의 원인에 대한 자세한 목록을 제공 할 수 있다면 좋을 것입니다.
업데이트 : 두 명의 사용자가 이미 알고 있듯이 전체 풀이 아닌 AppDomain 만 재활용하는 이유를 지정하는 답변에 기뻐할 것입니다.
두 가지 다른 효과-AppPool 프로세스는 잠재적으로 여러 앱 도메인에 대한 호스트입니다. 일반적으로 이것은 시간-매 'n'시간, 요청 부족, 메모리 사용 등과 같은 여러 효과에 의해 재활용 될 수 있습니다. IIS 구성 관리자에서 구성됩니다.
AppDomain-응용 프로그램 루트의 호스팅 된 인스턴스는 AppPool의 다른 AppDomain에 영향을주지 않고 더 자주 순환 될 수 있습니다. AppDomain 재활용에 대한 Tess의 게시물은 꽤 통찰력이 있습니다.
재 컴파일을 위해 모니터링되는 폴더에 쓰고 있습니다. 그러면 어느 시점에서 appdomain 재 작성이 트리거됩니다.
이벤트 로그는 재활용을 시작한 원인을 확인하는 데 도움이됩니다.
다른 게시물에서 좋아하는 기사는 실제로 이것에 대해 정말 잘했습니다.
즉시 재활용
- Web.config 변경
- Machine.config 변경
- Global.asax 변경 사항
- Bin 디렉토리 변경
- App_Code 변경
지연된 재활용
일반적으로 .aspx 또는 .cs / .vb 파일이 변경된 경우에만 다른 위치에서 여러 변경 사항이있을 때 발생할 수 있습니다. 임시 텍스트, csv 또는 기타 파일을 추가해도 문제가 발생하지 않았습니다.
참고 : 이는 모두 앱 도메인 재활용이며 풀의 실제 재활용이 아닙니다. 일반적으로 응용 프로그램 POOL은 IIS의 설정 (요청 수, 메모리 제한, 유휴 시간 또는 예약 된 다시 시작)에 따라서 만 재활용됩니다.
전체 AppPool 재활용 이벤트 로그를 켜고 싶을 수 있습니다.
cscript adsutil.vbs Set w3svc/AppPools/DefaultAppPool/LogEventOnRecycle 255
또한이 Scott Guthrie 블로그 기사 ( http://weblogs.asp.net/scottgu/archive/2005/12/14/433194.aspx) 에서 Global.ASAX에 기록 할 코드를 작성하는 방법을 살펴볼 수 있습니다. Application.End 이벤트의 실제 원인.
이것은 몇 가지 잘못된 문제를 진단하는 데 매우 유용했습니다. 특히 하나는 wwwroot 디렉토리에 로그 파일을 쓰는 앱이었습니다. 너무 많은 파일 변경으로 인해 재활용이 발생했습니다.
이는 기본 설정에 따라 매일 또는 프로세스의 최대 가상 메모리를 초과 할 때 발생할 수 있습니다.
실행 된 시간 (분) 또는 처리 된 요청 수를 기반으로 앱 풀을 재활용하도록 조작 할 수있는 설정입니다.
또한 여기에 게시 된 web.config 변경 사항 및 기타 사항을 재활용합니다.
IIS 재설정도 서비스 중지 / 시작과 마찬가지로 트릭을 수행합니다.
w3wp.exe
오류가 발생했습니다. 이 일으키는 Application_Start
에서 호출 할 Global.asax
.
이를 확인하기 위해 이벤트 뷰어를 열었습니다 .
아래에서 Windows 로그 나는 갔다 응용 프로그램 .
응용 프로그램 오류를 보았습니다 .
Faulting application name: w3wp.exe, version: 10.0.16299.15, time stamp: 0x0aeb5595
Faulting module name: KERNELBASE.dll, version: 10.0.16299.334, time stamp: 0x6369e29f
Exception code: 0xe0434352
Fault offset: 0x0000000000014008
Faulting process id: 0x2900
Faulting application start time: 0x01d43b16f726cbb9
Faulting application path: c:\windows\system32\inetsrv\w3wp.exe
Faulting module path: C:\WINDOWS\System32\KERNELBASE.dll
Report Id: 998cf55d-2cd9-4b8d-9884-2110e3fd1411
Faulting package full name:
Faulting package-relative application ID:
참고 URL : https://stackoverflow.com/questions/302110/what-causes-an-application-pool-in-iis-to-recycle
'UFO ET IT' 카테고리의 다른 글
다른 JVM Lisps보다 Clojure가 필요한 이유 : Kawa, Armed Bear 또는 SISC? (0) | 2020.11.12 |
---|---|
T4 템플릿에서 Linq를 어떻게 사용할 수 있습니까? (0) | 2020.11.11 |
프로그래밍 언어를 언급 할 때 "표현 적"이란 무엇을 의미합니까? (0) | 2020.11.11 |
JavaScript에서 산술 연산자 오버로딩? (0) | 2020.11.11 |
Git에서 콜론 (: (0) | 2020.11.11 |