ASP.NET 페이지 캐싱
업데이트: 2007년 11월
ASP.NET을 사용하면 ASP.NET 페이지에서 생성된 응답 중 일부 또는 전체를 캐시할 수 있습니다. 이러한 기능을 ASP.NET에서는 출력 캐싱이라고 합니다. 요청을 만드는 브라우저, 요청에 응답하는 웹 서버, 요청/응답 스트림에 있는 프록시 서버와 같은 캐시 가능 장치에서 페이지를 캐시할 수 있습니다. 캐싱은 웹 응용 프로그램의 성능을 향상시키는 강력한 방법을 제공합니다. 캐싱을 사용하면 페이지에 대한 이후 요청이 캐시로부터 충족되므로 이 페이지를 처음으로 만든 코드를 다시 실행하지 않아도 됩니다. 가장 자주 액세스되는 사이트 페이지를 캐시하면 일반적으로 초당 요청 수로 측정되는 웹 서버의 처리량을 크게 증가시킬 수 있습니다.
캐시 설정은 페이지나 구성 파일에서 선언형으로 지정하거나 캐시 API를 사용하여 프로그래밍 방식으로 지정할 수 있습니다. 자세한 내용은 페이지의 캐시 가능성 설정을 참조하십시오.
쿼리 문자열 매개 변수나 폼 변수(컨트롤 값)의 값을 기반으로 페이지를 캐시할 수 있습니다. 이러한 값 형식을 기반으로 하는 캐싱은 @ OutputCache 지시문의 VaryByParam 속성을 사용하여 명시적으로 사용 가능하도록 설정해야 합니다. 자세한 내용은 여러 버전의 페이지 캐싱을 참조하십시오.
캐시된 페이지를 사용자가 요청하면, ASP.NET에서는 캐시된 출력이 이 페이지에 대해 정의된 캐시 정책에 따라 아직도 유효한지 확인합니다. 출력이 유효한 경우에는 캐시된 출력이 클라이언트에 전달되고 페이지가 다시 처리되지 않습니다. ASP.NET에서는 사용자 지정 논리를 작성하여 페이지가 유효한지 확인할 수 있도록 이러한 유효성 검사 중에 코드를 실행할 수 있습니다. 자세한 내용은 방법: 캐시된 페이지의 유효성 검사를 참조하십시오.
일부 경우에는 각 요청에 대해 페이지의 일부를 변경해야 하기 때문에 전체 페이지를 캐시하는 것은 비 실용적인 경우가 있습니다. 이러한 경우에는 페이지의 일부만 캐시할 수 있습니다. ASP.NET에서는 ASP.NET 페이지의 일부만 캐시하는 기능을 제공합니다. 자세한 내용은 ASP.NET 페이지의 부분 캐싱을 참조하십시오.
참고 항목
작업
방법: 선언적으로 ASP.NET 페이지의 캐시 가능성 설정
방법: ASP.NET 페이지 캐싱에 대한 만료 값 설정