2011-02-09 5 views
2

내 웹 사이트는 페이지 콘텐츠가 자주 변경되지 않는 블로그와 비슷합니다. 그래서 나는 페이지 출력 캐시를 사용하기로 결정했다.ASP.NET 사용자 지정 출력 캐시 구현시 조언이 필요합니다.

하지만 모든 페이지의 출력 캐시를 켜고 캐시 기간을 1 시간으로 설정하면 웹 호스팅이 광범위한 시스템 메모리를 사용함에 따라 내 사이트를 일시 중지 시켰습니다. 그 후 2 분으로 지속 시간을 다시 설정하지만, 몇 차례는 데이터베이스 연결 시간 초과 오류가 발생합니다.

성능 향상을 위해 어쨌든 캐싱이 필요하지만 메모리에 캐시하지 않아야합니다. 그래서 나는 아이디어를 따라왔다. 최선의 접근 방법인지 아니면 이보다 더 좋은 해결책이 있는지 조언 해주십시오.

모든 요청을 차단하는 HTTP 모듈을 작성하고 싶습니다. 특정 요청에 대한 캐시 버전이 없으면 페이지 쓰기 (파일 쓰기 사용)를 파일로 디스크에 씁니다. 그렇지 않으면이 파일을 응답으로 보냅니다. , 당신은 단지 새로운 프로 바이더를 쓸 수 출력 캐싱을 제공 기반과 -

대상 프레임 워크는 ASP.NET 4.0에 있다면, 당신은 HttpModule을로이를 작성할 필요가 없습니다 2.0

+0

[Microsoft Enterprise Library] (http://msdn.microsoft.com/en-us/library/ff648951.aspx)를 살펴보십시오. 문제를 해결할 수있는 캐싱 응용 프로그램 블록이 있습니다. – Koen

+0

@Koen, 데이터 캐싱 전용이 아니고, 출력 캐싱이 아닌 – Veeru

답변

0

입니다 Gunnar Peipman은 파일 기반 출력 캐시 공급자를 작성하는 데 큰 블로그 here을 가지고 있습니다.

+0

대상 프레임 워크가 2.0 인 것이 좋겠습니다. – Veeru

관련 문제