ASP.NET 페이지에서 캐싱 방법: 성능 향상

기술 자료 번역 기술 자료 번역
기술 자료: 315896 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

이 문서에서는 @ OutputCache 페이지 지시문 사용하여 전체 ASP.NET 페이지에서 캐싱 ASP.NET 응용 프로그램의 성능을 향상시키는 방법을 보여 줍니다. 이 문서에서는 이 구현을 보여 주는 것처럼 @ OutputCache 페이지 지시문을 ASP.NET 페이지의 특정 부분을 캐시할 수도 있습니다.

요구 사항

다음은 권장되는 하드웨어, 소프트웨어, 네트워크 인프라 및 필요한 서비스 팩의 목록입니다.
  • Microsoft Visual Studio .NET
  • Microsoft 인터넷 정보 서비스 (IIS) 4.0 또는 Microsoft 인터넷 정보 서비스 (IIS) 5
이 문서에서는 사용자가 다음 항목을 잘 알고 있다고 가정합니다.
  • 웹 응용 프로그램
  • Microsoft ASP.NET

해당 기술 설명

정보를 캐시할 때 메모리에 있는 정보는 놓습니다. 일반적으로, IIS 페이지에 대한 요청을 받으면 IIS 페이지를 하드 디스크에서 읽고 페이지를 보냅니다. 경우에 따라 IIS 자동으로 성능 향상을 위해 메모리에 있는 정보를 저장할 수 있습니다. 해당 페이지의 IIS 메모리에서 보유하는 어떤 정보를 확인하는 데 사용하는 기준에 맞지 않는 경우에도 @ OutputCache 지시문을 페이지를 메모리에 저장할 수 있습니다.

예를 들어, 데이터베이스 액세스 페이지는 최신 데이터 얻기 위해 페이지는 탐색할 때마다 다시 실행합니다. @ OutputCache 지시문을 사용할 때 지정한 시간 기간이 만료될 때까지 페이지가 메모리에서 데이터베이스에 한 쿼리의 결과를 함께 보관됩니다. 따라서 다른 사용자가 해당 페이지를 볼 때마다 데이터베이스를 쿼리하는 것을 방지하려면 @ OutputCache 지시문을 사용할 수 있습니다. 자주 변경되지 않는 데이터를 매우 유용합니다.

@ OutputCache 사용하는 ASP.NET 웹 응용 프로그램 만들기

이 단원에서는 특정 시간 동안 페이지를 캐시할 수 @ OutputCache 페이지 지시문을 사용하는 ASP.NET 웹 응용 프로그램을 만듭니다.
  1. Visual Basic .NET 에서는 새 ASP.NET 웹 응용 프로그램을 만들려면 다음과 같이 하십시오.
    1. Visual Studio .NET 엽니다.
    2. 파일 메뉴에서 새로 만들기를 가리킨 다음 프로젝트 를 클릭하십시오.
    3. 새 프로젝트 대화 상자의 프로젝트 형식Visual Basic 프로젝트 클릭한 다음 템플릿 에서 ASP.NET 웹 응용 프로그램 을 누릅니다.
  2. WebForm1.aspx 창에 HTML 뷰로 전환한 다음 @ Page 지시문의 바로 뒤에 다음 지시문을 추가합니다:
    <%@ OutputCache Duration="10" VaryByParam="none" %>
    						
    10초 동안 페이지 내용을 캐시할 수 있도록 이 코드는 10 초 @ OutputCache 지시문 기간 특성을 설정합니다. 또한 사용자가 정의하는 변수를 기반으로 출력 캐시를 변경하는 데 사용할 수 있는 문자열 세미콜론으로 구분된 목록을 VaryByParam 특성이 구성됩니다. 이 기능은 이 기사에서 다루지 않으므로 코드를 VaryByParam없음 으로 설정합니다.
  3. WebForm1.aspx의 HTML 뷰에서 추가하려면 열고 닫는 <form>태그 사이에 다음 코드를 추가하여,레이블 컨트롤을 폼에:
    <asp:Label>
    Last cached: <%Response.Write(Now())%>
    </asp:Label>
    						
    이 레이블을 사용할 페이지가 로드된 마지막으로 시간을 표시합니다. 이 레이블은 값을 한 번 10초마다, 페이지를 새로 고칠 관계없이 횟수를 경우에만 변경해야 합니다.
  4. 파일 메뉴에서 저장 을 클릭하십시오.
  5. 빌드 메뉴에서 솔루션 빌드 를 클릭하십시오.
  6. 페이지를 마우스 오른쪽 단추로 클릭한 다음 브라우저에서 보기를 클릭하십시오. 레이블, 현재 시간이 표시되는 나타납니다.
  7. 페이지를 여러 번 새로 고칩니다. 10 초 기간이 만료되면 레이블을 바뀝니다.

코드 목록 완료

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="WebApplication1.WebForm1"%>
<%@ OutputCache Duration="10" VaryByParam="none" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
    <head>
        <title>WebForm1</title>
        <meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">
        <meta name="CODE_LANGUAGE" content="Visual Basic 7.0">
        <meta name="vs_defaultClientScript" content="JavaScript">
        <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    </head>
    <body MS_POSITIONING="GridLayout">
        <form id="Form1" method="post" runat="server">
        <asp:Label>
            Last Cached: <%Response.Write(Now())%>
        </asp:Label>
        </form>
    </body>
</html>
				
참고: 프로젝트 및 웹 폼 이름을 참조하는 데 필요한 경우 다음 코드 줄 Inherits 특성은 수정해야 할 수 있습니다:
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="WebForm1.aspx.vb" Inherits="WebApplication1.WebForm1"%>
				
해당 코드는 현재 프로젝트에 WebApplication1을 이며 Web Form WebForm1 인 가정합니다.

It 제대로 작동하는지 확인하십시오.

  1. 여러 개의 브라우저 창을 엽니다.
  2. 최종 사용자가 것처럼 각 창에서 .aspx 페이지를 찾습니다. 한 번에 페이지를 찾아봅니다 경우에도 창을 모두 동일한 시간 10 초 동안 표시할 알 수 있습니다.
  3. 10 초 후 찾아보거나 .aspx 페이지를 새로 고칩니다. 모든 창을 업데이트할 시간을 알 수 있습니다.



참조

자세한 내용은 다음 Microsoft 웹 사이트를 참조하십시오.
ASP.NET 최적화
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconaspoptimization.asp

ASP.NET 캐싱 기능
http://msdn2.microsoft.com/en-us/library/xsbfdd8c(vs.71).aspx

ASP.NET 페이지 캐싱
http://msdn2.microsoft.com/en-us/library/06bh14hk(vs.71).aspx

@ OutputCache
http://msdn2.microsoft.com/en-us/library/hdxfb6cy(vs.71).aspx

속성

기술 자료: 315896 - 마지막 검토: 2007년 5월 31일 목요일 - 수정: 3.6
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
키워드:?
kbmt kbcaching kbhowtomaster kbio kbperformance kbwebforms KB315896 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com