다음을 통해 공유


네트워크 애플리케이션에 대한 캐시 관리

이 항목 및 관련 하위 항목에서는 WebClient, WebRequest, HttpWebRequest, 및 FtpWebRequest 클래스를 사용하여 얻은 리소스의 캐싱을 설명합니다.

캐시는 애플리케이션에서 요청한 리소스의 임시 스토리지를 제공합니다. 애플리케이션이 동일한 리소스를 두 번 이상 요청하는 경우 리소스를 캐시에서 반환하여 서버에서 다시 요청하는 오버헤드를 방지할 수 있습니다. 캐싱은 요청된 리소스를 가져오는 데 필요한 시간을 줄여 애플리케이션 성능을 향상시킬 수 있습니다. 캐싱은 서버로의 여정 수를 줄여 네트워크 트래픽을 줄일 수도 있습니다. 캐싱은 성능을 향상시키지만 애플리케이션에 반환된 리소스가 부실할 위험이 증가합니다. 즉, 캐싱이 사용되지 않는 경우 서버에서 보낸 리소스와 동일하지 않습니다.

캐싱을 사용하면 권한이 없는 사용자 또는 프로세스가 중요한 데이터를 읽을 수 있습니다. 캐시된 인증된 응답은 추가 권한 부여 없이 캐시에서 검색될 수 있습니다. 캐싱이 사용 설정된 경우, 이 요청의 캐싱을 비활성화하려면 CachePolicy에서 BypassCache 또는 NoCacheNoStore로 변경하십시오.

보안 문제로 인해 중간 계층 시나리오에는 캐싱이 권장 되지 않습니다 .

이 섹션 안에

캐시 정책
캐시 정책의 정의 및 정의 방법에 대해 설명합니다.

Location-Based 캐시 정책
하이퍼텍스트 전송 프로토콜(http 및 https) 리소스에 사용할 수 있는 위치 기반 캐시 정책의 각 유형을 정의합니다.

Time-Based 캐시 정책
시간 기반 캐시 정책을 사용자 지정하는 데 사용할 수 있는 조건에 대해 설명합니다.

네트워크 애플리케이션에서 캐싱 구성
캐싱을 사용하는 캐시 정책 및 요청을 프로그래밍 방식으로 만드는 방법을 설명합니다.

참고 문헌

System.Net.Cache
형식과 열거형을 정의하여 WebRequest, HttpWebRequest, FtpWebRequest 클래스를 사용하여 가져온 리소스에 대한 캐시 정책을 정의하는 데 사용합니다.