이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 12623|회답: 0

[웹] IIS 7 애플리케이션 풀 자동 재활용 솔루션 종료 시

[링크 복사]
게시됨 2017. 6. 16. 오전 10:51:12 | | |

ASP.NET 한다면 IIS를 꼭 사용할 겁니다

ASP.net 애플리케이션에 예약된 작업을 추가하고 싶다면, 스레드를 사용해 일정 계산을 끊임없이 해야 합니다

그다음 ASP.Net 애플리케이션에 Quartz.NET 프레임워크를 추가하고, 설정 등은 괜찮다고 가정해 봅시다.

이 사이트는 방문자가 매우 적고, 지금은 근무 중에도 몇 명만 이용하지만, 다음 날 방문했을 때 백그라운드 스케줄링의 스레드와 계산 작업이 중단된 것을 보았고, 이벤트를 잡아보면 실제로 호출된 이벤트Application_End 확인하실 수 있습니다.


그렇다면 IIS의 애플리케이션 풀 재활용 메커니즘에 문제가 있는 게 분명합니다. IIS의 기본 설정은 일정 기간 동안 사이트의 애플리케이션 풀에 접근하거나 요청되지 않으면 IIS가 자동으로 프로그램 풀을 회수하고 프로세스를 종료하기 때문입니다. 그 과정의 실들은 분명히 살아남지 못할 것입니다.


하지만 애플리케이션 풀 매개변수를 설정하여 단순히 자동으로 재활용되지 않도록 할 수 있습니다(일부 상황은 핫 배포 사이트, 과도한 오류 발생 등).


이 사이트에서 사용하는 프로그램 풀을 IIS에서 찾아서 "고급 설정..."을 클릭하세요.

열리는 목록에서 다음 설정을 변경하세요:

복구 - 고정된 시간 간격(분)이 0으로 변경됨

        - 가상/전용 메모리 한도(KB)가 0으로 변경됨

프로세스 모델 - 유휴 타임아웃(분)이 0으로 변경됨


이렇게 하면 프로그램 풀이 자동으로 재활용되지 않고, 백그라운드의 일부 간단한 컴퓨팅 스레드가 정상적으로 작동합니다




이전의:객체 간 AutoMapper 변환 튜토리얼 [소스 코드]
다음:.NET MySQL 데이터베이스 연결 문자열
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com