현재 오프라인 상태입니다. 인터넷에 다시 연결하기를 기다리고 있습니다.

Visual Basic .NET 사용하여 ASP.NET 에서 캐시 방법

중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

811431
요약
이 문서에서는 ASP.NET 웹 페이지 및 데이터 개체에 캐시하는 방법을 제어하는 방법을 설명합니다. 캐싱을 통해 나중에 요청을 할 때 정보를 다시 사용하지 않습니다. 캐싱은 고성능 및 확장 가능한 서버 응용 프로그램을 구축하는 동안 중요한 기술입니다. 페이지에 대한 첫 번째 요청에서 데이터 개체, 페이지 또는 페이지 메모리의 일부를 저장할 수 있습니다. 웹 서버, 프록시 서버 또는 브라우저 이러한 항목을 저장할 수 있습니다.

추가 정보
ASP.NET 캐싱을 제어하는 데 편리한 방법을 제공합니다. @ OutputCache 지시문을 사용하여 페이지 출력 캐싱 ASP.NET에서 제어할 수 있습니다. HttpCachePolicy 클래스를 사용하여 데이터 집합, 서버 메모리 같은 임의의 개체를 저장합니다. 클라이언트 브라우저, 프록시 서버 및 Microsoft 인터넷 정보 서비스 (IIS) 와 같은 응용 프로그램 캐시에 저장할 수 있습니다. Cache-Control HTTP 헤더 캐싱을 제어할 수 있습니다.

ASP.NET 출력 캐싱에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
308516Visual Basic .NET 사용하여 ASP.NET에서 컨트롤 페이지 출력 캐싱 방법

ASP.NET 페이지 캐시

기본 Visual .NET 또는 Visual C# .NET을 사용하여 코드를 통해 프로그래밍 방식으로 또는 @ OutputCache 지시문을 사용하여 캐시할 수 있습니다. @ OutputCache 지시문을 위치 특성을 포함합니다. 이 특성은 캐시된 항목의 위치를 결정합니다. 다음 위치 중 하나를 지정할 수 있습니다.
  • 모든 - 이 요청을 또는 요청이 처리된 서버가 참여하는 클라이언트 브라우저에서 프록시 서버나 다른 서버에 출력 캐시에 저장합니다. 기본적으로 모두 선택되어 있습니다.
  • 클라이언트 - 클라이언트 브라우저에서 이 출력 캐시에 저장합니다.
  • Downstream - 이 요청에 참여하지 캐시 가능 장치 (서버가 아닌 다른 원본) 의 출력 캐시에 저장합니다.
  • 서버 - 이것은 웹 서버에 출력 캐시에 저장합니다.
  • 없음 - 이 출력 캐시 기능을 이 해제합니다.

다음 코드 샘플은 @ OutputCache 지시문을 및 동일한 프로그래밍 코드가 있습니다.
  • 지정한 기간 출력 캐시에 저장할 수

    선언적 방식:
    <%@ OutputCache Duration="60" VaryByParam="None" %>

    프로그래밍 방식:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))Response.Cache.SetCacheability(HttpCacheability.Public)
  • 여기서 요청이 처음 시작된 브라우저 클라이언트 출력 캐시에 저장할 수

    선언적 방식:
    <%@ OutputCache Duration="60" Location="Client" VaryByParam="None" %>

    프로그래밍 방식:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))Response.Cache.SetCacheability(HttpCacheability.Private)
  • 모든 HTTP 1.1 캐시 가능 장치 프록시 서버 및 클라이언트 요청 내용을 포함하는 출력 캐시에 저장할 수

    선언적 방식:
    <%@ OutputCache Duration="60" Location="Downstream" VaryByParam="None" %>

    프로그래밍 방식:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))Response.Cache.SetCacheability(HttpCacheability.Public)Response.Cache.SetNoServerCaching()
  • 웹 서버의 출력 캐시에 저장할 수

    선언적 방식:
    <%@ OutputCache Duration="60" Location="Server" VaryByParam="None" %>

    프로그래밍 방식:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))Response.Cache.SetCacheability(HttpCacheability.Server)
  • 다른 도시 함께 도착할 각 HTTP 요청에 대한 출력 캐시 수

    선언적 방식:
    <%@ OutputCache duration="60" varybyparam="City" %>

    프로그래밍 방식:
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))Response.Cache.SetCacheability(HttpCacheability.Public)Response.Cache.VaryByParams("City") = true
    VaryByCustom 특성, VaryByHeader 특성 및 @ OutputCache 지시문 VaryByParam 특성에서 HttpCachePolicy 클래스 VaryByHeaders 속성 및 VaryByParams 속성 및 SetVaryByCustom 메서드를 제공합니다.

클라이언트 및 프록시 캐싱 해제

ASP.NET 웹 페이지에 클라이언트 위치에 및 프록시 위치에 대한 출력 캐시를 해제하려면 위치 특성 값 없음 을 설정하고 VaryByParam없음@ OutputCache 지시문에 을 설정하십시오. 다음 코드 샘플을 사용하여 클라이언트 및 프록시 캐싱 기능을 해제합니다.
  • 선언적 방식:
    <%@ OutputCache Location="None" VaryByParam="None" %>
  • 프로그래밍 방식:
    Response.Cache.SetCacheability(HttpCacheability.NoCache)

서버 메모리에 임의의 개체 캐시

ASP.NET 메모리에서 만들려면 서버 리소스 많이 필요한 개체를 저장하는 데 사용할 수 있는 강력하고 사용이 쉬운 캐싱 메커니즘이 포함되어 있습니다. 캐시 클래스에서 이 메서드를 구현합니다. 인스턴스 개인 각 응용 프로그램 및 해당 응용 프로그램 수명 연결됩니다. 캐시 클래스를 사용하여 ASP.Net 임의의 개체를 캐시하려면 다음과 같이 하십시오.
  1. 새 ASP.NET 웹 응용 프로그램을 Visual 기본 .NET을 사용하여 만듭니다.
  2. 기본적으로 WebForm1.aspx가 만들어집니다.
  3. WebForm1.aspx 의 HTML 뷰에서 기존 코드를 다음 예제 코드로 바꿉니다:
    <%@ Import Namespace="System.Data.SqlClient" %><%@ Import Namespace="System.Data" %><HTML>	<script language="vb" runat="server">		Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)			Dim Source As DataView		'Retrieve the DataView object from the Cache class. If it does not exist, add the DataView object to the Cache class.		Source = CType(Cache("MyDataSet"), DataView)		If Source Is Nothing Then			Dim myConnection As SqlConnection = New SqlConnection("Server=ServerName; database=Pubs; user id=UID; password=PWD;")			Dim myCommand As SqlDataAdapter = New SqlDataAdapter("select * from Authors", myConnection)			Dim ds As DataSet = New DataSet()			myCommand.Fill(ds, "Authors")			Source = New DataView(ds.Tables("Authors"))			Cache("MyDataSet") = Source			CacheMsg.Text = "Dataset created explicitly"					Else						CacheMsg.Text = "Dataset retrieved from cache"		End If		' Bind the DataView object to DataGrid. 		MyDataGrid.DataSource = Source		MyDataGrid.DataBind()		End Sub	</script>	<body>		<form method="GET" runat="server" ID="Form1">	      <h3><font face="Verdana">Caching Data</font></h3>			<ASP:DataGrid id="MyDataGrid" runat="server"			Width="700"			BackColor="#ccccff"			BorderColor="black"			ShowFooter="false"			CellPadding=3			CellSpacing="0"			Font-Name="Verdana"			Font-Size="8pt"			HeaderStyle-BackColor="#aaaad" />			<p>			<i><asp:label id="CacheMsg" runat="server"/></i>	    </form>		</P>	</body></HTML>
    참고 값을 ServerName, UIDPWDSqlConnection 개체에 대한 샘플 코드에서 SQL 서버 이름, 사용자 ID 및 암호 바꾸기.
  4. 디버그 메뉴에서 응용 프로그램을 실행하려면 시작 을 클릭하십시오.

    참고 응용 프로그램을 다시 시작할 때 캐시된 개체가 다시 만들어집니다.
참조
자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
234067Internet Explorer에서 캐싱을 방지하는 방법
247404IIS를 사용하면 Cache-Control HTTP 헤더 수정하는 방법
311006Windows 2000에서 웹 캐싱을 방지하는 방법
247389IIS: 특정 MIME 형식의 캐싱을 해제하는 방법
313561IIS의 컨텐트 만료에 대한 HTTP 헤더 설정 방법


자세한 내용은 다음 Microsoft 웹 사이트를 참고하시기 바랍니다:

경고: 이 문서는 자동으로 번역되었습니다.

속성

문서 ID: 811431 - 마지막 검토: 05/31/2007 02:46:37 - 수정: 3.6

Microsoft ASP.NET 1.1, Microsoft ASP.NET 1.0, Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition

  • kbmt kbhowtomaster kbdatabinding kbcaching kbwebforms kbinfo KB811431 KbMtko
피드백