1. ASP 캐시 란 무엇입니까? 왜 캐시해야합니까?
초기 단계에서 ASP 기술을 사용하여 웹 사이트를 설립하면 ASP 동적 웹 페이지 기술이 가져 오는 편의성과 무작위 수정 및 무료 HTTP 제어를 느낄 수 있습니다. 그러나 방문 횟수가 증가함에 따라 사이트 액세스가 느려지고 IIS 재시작이 점점 더 빈번 해지고 있음을 분명히 알 수 있습니다. 다음으로, 데이터베이스를 더 나은 성능으로 교체하고, 인덱스 생성, 저장된 절차 작성 등과 같은 ASP를 최적화해야합니다. 이러한 측정 중 일부는 비용 압력 증가가 필요하지 않지만 다른 측정은 비용 압력 (예 : SQL에 대한 융합 액세스)입니다. 그 효과는 확실하지 않습니다.
웹 액세스의 압력에 직면 한 가장 경제적 인 방법은 캐시 최적화 기술을 사용하여 웹의 서비스 압력을 완화하는 것입니다.
웹 방문 증가는 일반적으로 다음 자원 수요가 급격히 증가 함을 의미합니다.
1. 네트워크 카드 트래픽이 증가하여 네트워크 트래픽 및 네트워크 I/O 스레드를 처리하기 위해 더 많은 CPU가 필요합니다.
2. 데이터베이스 연결을 더 자주 열고 닫아야합니다 (데이터베이스 기술이 사용되는 경우 ASP는 일반적으로 데이터베이스를 데이터 저장소로 사용합니다), 자원을 심각하게 소비하는 것의 수와 서로 경쟁하는 트랜잭션으로 인한 교착 상태는 네트워크 I/O 또는 CPU 소비를 증가시킵니다.
3. 세션을 사용하는 경우 IIS는 상태를 유지하기 위해 더 많은 메모리를 소비하고 메모리 소비는 물리적 메모리가 충분하지 않아 물리적 메모리와 보조 메모리 사이의 빈번한 교환을 유발하여 코드 실행이 일시 중지 및 웹 응답 막힘을 유발합니다.
4. 액세스에 대한 부적절한 응답으로 인해 웹 페이지 액세스 실패로 인해 사용자가 새로 고침되어 CPU 및 메모리와 같은 리소스에 대한 수요가 악화됩니다.
실제로 일반적인 웹 응용 프로그램을 고려하면 동적 코드 실행이 종종 불필요합니다.
2. ASP 캐시의 분류
무단 요약, ASP 캐시는 두 가지 범주로 나눌 수 있습니다.
1. 파일 캐시
소위 파일 캐싱은 논리적 판단에 따라 특정 ASP의 특정 실행이 일정 기간 내에 크게 변경되지 않으므로 컨텐츠는 정적 HTML 형태로 저장된 다음 클라이언트가 웹 리디렉션 기술을 사용하여 정적 파일에 액세스하여 CPU, 데이터베이스 리소스 등을 줄여야 할 필요성을 달성 할 수 있음을 의미합니다. 예를 들어, 많은 포럼은 게시물에 회신 할 때 전체 게시물을 정적 파일을 재생시킨 다음 donews.com 포럼과 같은 리디렉션을 재생합니다. 정적이되는 부작용 (혜택)이 있습니다. Google과 같은 검색 엔진에는 쉽게 포함시킬 수 있습니다. 소위 뉴스 릴리스 시스템은이 기술을 사용합니다.
2. 파일 조각 캐시
소위 파일 캐싱은 논리적 판단에 기초합니다. 데이터의 특정 부분 (일반적으로 자원 소비가 필요한 대용량 데이터베이스 쿼리)은 일정 기간 내에 변경되지 않으므로 이러한 데이터를 파일 형태로 저장할 수 있습니다. 필요한 경우 데이터베이스의 부담을 증가시키지 않도록 파일을 읽음으로써 데이터를 얻을 수 있습니다. 예를 들어, 우리는 일반적으로 일부 데이터를 XML 형식으로 저장 한 다음 XSLT 기술을 사용하여이를 표시합니다 (XML 처리에는 일반적으로 많은 양의 CPU 리소스가 필요하므로 IE는 일반적으로 클라이언트에 XML을 직접 읽고 클라이언트의 CPU에서 처리합니다). 이것이 CSDN의 포럼이 처리하는 방식입니다.
3. 메인 메모리 캐시
또한 메모리에서 캐시 처리를 고려하고 메모리에 제 시간에 응답 해야하는 컨텐츠를 저장하고 액세스 요구에 액세스하면 빠른 스토리지에서 즉시 전송할 수도 있습니다. 많은 양의 액세스 요구가 소수의 페이지 또는 충분한 메인 메모리에 집중되면 기본 메모리 캐시를 사용하면 웹 액세스 성능이 크게 향상 될 것이라고 생각합니다.