2011-10-10 3 views
0

.net 웹 응용 프로그램에서 캐싱을 구현하고 있습니다. 기본적으로 ... 모든 페이지에서 가져온 일부 데이터를 캐시하고 싶지만 데이터베이스에서는 절대로 변경하지 마십시오.system.web.caching - 캐시가 유지되는 레벨은 무엇입니까?

각 내 캐시 요소가 고유 :

  • 세션?
  • 앱 풀?
  • 서버?

수천 명의 사람들이 내 사이트를 공격하고 각 캐시가 ~ 5k이면 세션이 중단 될 수 있습니다.

응용 프로그램 풀과 여러 사이트 (예 : 다른 DB 백엔드 모두 한 대의 서버)를 실행하는 경우 각 인스턴스마다 개별 응용 프로그램 풀이 필요합니다.

도움이 될 것입니다 ... 나는이 데이터가 아마도 거기에 있다고 생각하는데, 나는 그것을 끌어 내기 위해 올바른 Google 조합을 가지고 있지 않습니다.

답변

2

가이 서버의 메모리에 저장됩니다. 즉, 웹 사이트의 모든 사용자가 공유하게됩니다. 또한 웹 팜에서 사이트를 실행중인 경우 out-of-process 캐시 저장소를 사용해야 팜의 모든 노드가 동일한 캐시를 공유해야합니다. 여기에 MSDN의 article에서 이에 대해 설명합니다.

2

"이 클래스의 하나 개의 인스턴스가 응용 프로그램 도메인별로 생성 및 응용 프로그램 도메인이 활성을 유지대로만큼 유효한 상태로 남아있다"- 기본적으로 MSDN

+1

OP의 경우 별도의 앱 풀이 필요하지 않습니다. –

관련 문제