C#을 사용하는 .NET 4.5.1 용 MVC 웹 응용 프로그램에서 작업 중이며 하나의 외부 DLL 라이브러리를 사용하고 있습니다. 이 라이브러리가 때때로 AccessViolationException을 던집니다. ASP.NET MVC 앱이 AccessViolationException에서 자동으로 다시 시작하나요?
나는[HandleProcessCorruptedStateExceptions]
속성으로 예외를 catch하고 catch 블록 내부에
HttpRuntime.UnloadAppDomain();
와 응용 프로그램을 다시 시작했습니다. 이 방법은 다소 효과가 있지만 때로는이 예외를 우회하여 블록 및 충돌을 피할 수 있습니다.
IIS가 충돌을 처리하고 다시 시작하여이 예외에서 응용 프로그램을 자동으로 복구합니까? 필요한 조치가 있습니까?
IIS가 오류에서 복구 중이며 사이트를 다시 순환하고 회전시켜야합니다. 이 경우 최종 사용자 문제를 제한하기 위해 web.config에 정의 된 시스템 키를 사용하고 있는지 확인하십시오. –
저로서는 외부 libs가 실패한 이유를 알아야하며, 응용 프로그램 풀을 다시 시작하면 웹 응용 프로그램 사용자에게 매우 불친절합니다. 세션을 다시 시작하면 세션이 \ lags 손실 될 수 있습니다. –