재우니의 블로그



http://msdn.microsoft.com/ko-kr/library/bb398860(v=vs.90).aspx#CodeExamples


ASP.NET 내부에서 사이트 미리 컴파일 장점은...


 응답 시간 향상, 오류 검사, 소스 코드 보호, 효율적인 배포 등과 같은 많은 이점


웹 사이트를 미리 컴파일하면 웹 사이트의 성능을 약간 향상시킬 수 있습니다. 특히 ASP.NET 웹 페이지와 코드 파일 간에 내용이 자주 변경되고 추가되는 사이트의 경우에 효과가 있습니다. 변경이 잦은 웹 사이트에서는 새로운 페이지와 변경된 페이지를 동적으로 컴파일하는 데 필요한 시간이 사이트 품질에 대한 사용자의 평가에 영향을 줄 수 있습니다.


내부에서 사이트를 미리 컴파일하면 사용자의 사이트 페이지 요청 시 발생하는 컴파일과 동일한 컴파일이 효과적으로 수행됩니다. 따라서 주요한 성능 향상은 첫 번째 요청에 대해 페이지를 컴파일하지 않아도 된다는 점입니다.


내부에서 사이트를 미리 컴파일하면 모든 ASP.NET 파일 형식이 컴파일됩니다. HTML 파일, 그래픽 파일 및 기타 ASP.NET 이외의 정적 파일은 그대로 남습니다. 미리 컴파일 프로세스는 ASP.NET이 동적 컴파일에 사용하는 것과 동일한 논리를 따르므로 파일 간 종속성이 적용됩니다. 미리 컴파일하는 동안 컴파일러는 모든 실행 가능한 출력에 대해 어셈블리를 만들고 이를 %SystemRoot%\Microsoft.NET\Framework\version\Temporary ASP.NET Files 폴더 아래의 특수 폴더에 둡니다. 그런 다음 ASP.NET은 이 폴더의 어셈블리로부터 페이지에 대한 요청을 수행합니다.


사이트를 다시 미리 컴파일하면 새로운 파일이나 변경된 파일(또는 새로운 파일이나 변경된 파일에 종속된 파일)만 컴파일됩니다. 이러한 컴파일러 최적화로 인해 부분 업데이트 후에도 사이트를 효과적으로 컴파일할 수 있습니다.