다음을 통해 공유


ASP.NET 4 캐싱 출력 캐시 공급자의 구성 설정(AppFabric 1.1 캐싱)

이 항목에서는 ASP.NET의 Windows Server용 Microsoft AppFabric 1.1 출력 캐시 공급자에 대한 구성 설정에 대해 설명합니다. 이러한 설정은 web.config 파일에 포함된 outputCache 요소의 providers 섹션에 지정되어 있습니다.

세션 상태 구성 설정

특성 설명

name(필수)

outputCache 요소에서 공급자를 참조하는 데 사용되는 공급자의 이름입니다.

type(필수)

공급자에 대한 .NET Framework 형식 문자열로서, “Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache”로 설정해야 합니다.

cacheName(필수)

AppFabric 캐시의 이름입니다.

dataCacheClientName(옵션)

dataCacheClients 구성 섹션에서 사용할 dataCacheClient 섹션의 이름입니다. 이 특성은 web.config 파일에 여러 dataCacheClient 섹션이 지정된 경우에만 필요합니다. 기본적으로 공급자는 “default”라는 dataCacheClient 섹션을 사용합니다.

applicationName(옵션)

출력 캐시 데이터를 저장할 캐시 키를 만들 때 공급자가 사용하는 문자열 값입니다. 기본값은 빈 문자열입니다. 이 특성이 설정되지 않은 경우 공급자는 HttpRuntime.AppDomainAppId 값을 내부적으로 사용하는 캐시 키의 일부로 사용합니다. 세션 상태 기능과 달리 여러 ASP.NET 응용 프로그램에서 출력 캐시 데이터를 공유할 수 없습니다(예: /contoso와 /AdventureWorks에서 출력 캐시 데이터를 공유할 수 없음). 대신 같은 응용 프로그램의 여러 실제 인스턴스에서 모두 동일한 출력 캐시 데이터에 액세스할 수 있어야 합니다. 이 작업을 수행하는 방법에는 두 가지가 있습니다.

  • applicationName 공급자 특성이 명시적으로 설정되지 않은 경우 캐시 키를 생성할 때 공급자가 HttpRuntime.AppDomainAppId를 내부적으로 사용합니다. 즉, 정확히 같은 메타베이스 경로를 사용하여 같은 응용 프로그램의 각 실제 인스턴스(즉, /contoso 응용 프로그램을 호스팅하는 각 웹 서버)를 IIS에 설치해야 합니다. SQL Server 및 Out-of-process 세션 상태 공급자에서 메타베이스 경로를 사용하는 방법에 대한 자세한 내용은 https://support.microsoft.com/kb/325056을 참조하십시오. 세션 상태는 다른 기능이지만 메타베이스 경로를 동기화된 상태로 유지할 때는 같은 문제가 발생합니다. 이는 web.config 파일에 applicationName 특성이 설정되지 않은 경우 출력 캐싱에 적용됩니다.

  • 보다 쉬운 접근 방법은 같은 ASP.NET 응용 프로그램의 각 인스턴스(예: /contoso 응용 프로그램을 호스팅하는 각 웹 서버)에서 web.config 파일의 동일한 applicationName 특성을 사용하는 것입니다. 이렇게 하면 같은 응용 프로그램의 서로 다른 실제 인스턴스에서 동일한 출력 캐시 데이터를 읽고 쓸 수 있습니다. 이 경우 공급자는 캐시 키를 생성할 때 AppDomainAppId를 사용하지 않으므로 메타베이스 경로가 일치하지 않을 위험이 없습니다.

retryInterval(옵션)

캐시와 통신할 때 오류가 발생한 경우 다시 시도 간에 대기할 시간 길이에 대한 TimeSpan입니다. 이 값에 사용할 문자열 형식은 "HH:MM:SS"입니다. 기본적으로 공급자는 1초 동안 대기합니다.

retryCount(옵션)

캐시와의 통신 실패 시 공급자에 다시 시도 횟수를 알려 주는 정수 값입니다. 일부 작업은 다시 시도할 수 없습니다. 다시 시도 횟수 기본값은 3회입니다. 공급자는 각 다시 시도 간에 구성된 retryInterval 시간 동안 대기합니다.

예제

다음 예제에서는 AppFabric 캐싱을 사용하는 outputCache 요소를 보여 줍니다.

<caching>
  <outputCache defaultProvider="DistributedCache">
    <providers>
      <add name="DistributedCache"
           type="Microsoft.Web.DistributedCache.DistributedCacheOutputCacheProvider, Microsoft.Web.DistributedCache"
           cacheName="default"
           dataCacheClientName="default" />
    </providers>
  </outputCache>
</caching>

참고 항목

개념

출력 캐시 공급자(AppFabric 1.1 캐싱)

  2012-03-05