ASP.NET Output Cache 상세 설명

2825 단어 ASP.NETOutputCache
사용자 가 페이지 에 접근 할 때 전체 페이지 는 서버 에 저장 되 어 페이지 를 캐 시 합 니 다.사용자 가 이 페이지 를 다시 방문 하면 페이지 는 데이터 작업 을 다시 수행 하지 않 습 니 다.페이지 는 먼저 서버 에 캐 시가 존재 하 는 지 확인 하고 캐 시가 존재 하면 캐 시 에서 페이지 정 보 를 직접 가 져 옵 니 다.페이지 가 존재 하지 않 으 면 캐 시 를 만 듭 니 다.
페이지 출력 캐 시 는 데이터 양 이 많 고 이벤트 작업 을 많이 하지 않 는 페이지 에 적 용 됩 니 다.한 페이지 가 대량의 이벤트 업데이트 와 데이터 업 데 이 트 를 실행 해 야 한다 면 페이지 출력 캐 시 를 사용 할 수 없습니다.@OutputCatch 명령 을 사용 하면 페이지 출력 캐 시 를 설명 할 수 있 습 니 다.예제 코드 는 다음 과 같 습 니 다.

<%@ OutputCache Duration="120" VaryByParam="none" %>
위 코드 는@OutputCatch 명령 을 사용 하여 페이지 캐 시 를 설명 합 니 다.이 페이지 는 120 초 동안 캐 시 됩 니 다.@OutputCatch 명령 은 10 개의 속성 을 포함 합 니 다.이 속성 을 통 해 페이지 의 서로 다른 상황 에 따라 캐 시 설정 을 할 수 있 습 니 다.자주 사용 하 는 속성 은 다음 과 같 습 니 다.
CacheProfile:OutputCacheProfile 이름 을 가 져 오 거나 설정 합 니 다.
Duration:캐 시 항목 을 가 져 오 거나 설정 하려 면 캐 시 에 저장 해 야 합 니 다.
VaryByHeader:캐 시 항목 을 바 꾸 는 데 사용 할 HTTP 헤더 이름 을 가 져 오 거나 설정 합 니 다.
Location:값 을 가 져 오 거나 설정 합 니 다.이 값 은 캐 시 항목 의 위 치 를 확인 합 니 다.Any,Clint,Downstream,None,Server 와 ServerAndClient 를 포함 합 니 다.기본 값 은 Any 입 니 다.
VaryByControl:구 분 된 컨트롤 식별 자 를 가 져 오 거나 설정 합 니 다.이 식별 자 는 현재 페이지 나 사용자 컨트롤 에 포함 되 어 있 으 며 현재 캐 시 항목 을 바 꾸 는 데 사 용 됩 니 다.
NoStore:값 을 가 져 오 거나 설정 합 니 다.이 값 은"Http Cache-Control:no-store"명령 이 설정 되 어 있 는 지 확인 합 니 다.
VaryByCustom:캐 시 항목 의 사용자 정의 문자열 목록 을 바 꾸 기 위해 출력 캐 시 를 가 져 옵 니 다.
Enabled:현재 내용 에 출력 캐 시 를 사용 할 지 여 부 를 표시 하 는 값 을 가 져 오 거나 설정 합 니 다.
VaryByParam:검색 문자열 이나 창 POST 인자 목록 을 가 져 옵 니 다.
해당 속성 을 설정 하면 페이지 에 해당 하 는 캐 시 를 설정 할 수 있 습 니 다.Default.aspx 에 캐 시 항목 을 설정 해 야 할 때 VaryByParam 속성 을 사용 하여 설정 할 수 있 습 니 다.예제 코드 는 다음 과 같 습 니 다.

<%@ OutputCache Duration="120" VaryByParam="none" %>
위 코드 는 Duration 속성 과 VarByParam 속성 을 사용 하여 현재 페이지 의 캐 시 속성 을 설정 합 니 다.한 페이지 를 위 한 전체 캐 시 설정 은 필요 하지 않 습 니 다.예 를 들 어 Default.aspx?id=1 과 Default.aspx?id=100 이 캐 시 에 나타 날 수 있 는 페이지 는 같 습 니 다.이것 은 개발 자가 원 하 는 것 이 아 닙 니 다.VarByParam 속성 설정 을 통 해 캐 시 파 라 메 터 를 지정 할 수 있 습 니 다.예제 코드 는 다음 과 같 습 니 다.

<%@ OutputCache Duration="120" VaryByParam="id" %>
상기 코드 는 매개 변수 id 를 통 해 캐 시 를 합 니 다.id 항목 이 다 르 면 ASP.NET 에서 진행 하 는 페이지 캐 시 도 다 릅 니 다.이렇게 하면 Default.aspx?id=1 과 Default.aspx?id=100 이 캐 시 에 표 시 된 페이지 가 일치 하지 않 습 니 다.VarByHeader 와 VarByCustom 은 주로 페이지 를 방문 하 는 클 라 이언 트 에 따라 페이지 의 외관 이나 내용 을 사용자 정의 하 는 데 사 용 됩 니 다.ASP.NET 에서 한 페이지 는 PC 사용자 와 MOBILE 사용자 에 게 출력 을 보 여 줘 야 할 수 있 으 므 로 클 라 이언 트 의 버 전 을 통 해 서로 다른 데 이 터 를 캐 시 할 수 있 습 니 다.예제 코드 는 다음 과 같 습 니 다.

<%@ OutputCache Duration="120" VaryByParam="none" VaryByCustom="browser" %>
이 코드 는 브 라 우 저 마다 캐 시 항목 을 따로 설정 합 니 다.

좋은 웹페이지 즐겨찾기