ASP.NET 캐싱의 이점 및 개요
코드 변경 없이 기존 ASP.NET 응용 프로그램에서 클러스터링된 세션을 빠르게 사용할 수 있으며 응용 프로그램의 성능 향상을 즉시 확인할 수 있습니다. NCache 데이터베이스에 저장하는 것보다 더 빠르고 확장성이 뛰어난 웹 팜을 위한 고성능 인메모리 ASP.NET 세션 클러스터링을 제공합니다. 세션이 메모리에 유지되고 ASP.NET 응용 프로그램에 더 가깝기 때문에 더 빠릅니다. 또한 데이터베이스 서버보다 더 큰 로드를 더 잘 처리할 수 있는 팜의 여러 서버에 세션을 배포할 수 있으므로 확장성이 더 높습니다.
와 NCache을 사용하면 Load Balancer에서 고정 세션을 사용할 필요가 없습니다. 이는 애플리케이션의 확장성을 크게 향상시킵니다. NCache 세션의 강력한 동적 클러스터링을 제공합니다. 여러 웹 서버 또는 여러 전용 세션 캐싱 서버에서 로컬로 세션을 복제하거나 배포할 수 있습니다. NCache 소규모 웹 팜에서 대규모 웹 팜으로 세션 클러스터링을 확장할 수 있는 풍부한 기능 세트를 제공합니다.
ASP.NET 세션 상태를 사용하면 다음을 구현하여 세션 데이터를 사용자 지정 데이터 소스에 저장할 수 있습니다. SessionStateStoreProviderBase 수업. 세션 상태 저장소 공급자는 다음을 사용하여 구현되었습니다. NCache 분산 캐시에 데이터를 저장합니다.
NCache세션 기반 저장소 공급자는 다음과 같은 이점을 갖습니다.
코드 변경 없음: NCache Session State Provider는 코드 변경 없이 애플리케이션에서 사용할 수 있습니다.
향상된 성능 : 세션 데이터는 최대 성능을 제공하는 메모리 내 캐시에 저장됩니다.
신뢰성 : 기본적으로 세션은 ASP.NET 프로세스의 메모리에 저장됩니다. 프로세스가 재활용되거나 애플리케이션 서버가 다운되면 세션 데이터가 손실됩니다. 와 함께 NCache, 세션 데이터는 ASP.NET 프로세스 외부의 캐시 클러스터에 저장됩니다. 안정성 요구 사항을 충족하도록 모든 캐시 토폴로지를 선택할 수 있습니다. 따라서 응용 프로그램 서버가 다운되는 경우 ASP.NET 프로세스가 재활용되거나 응용 프로그램 서버가 다시 돌아올 때 세션 데이터를 계속 사용할 수 있습니다.
고정 세션이 필요 없음: NCache 세션 상태 공급자는 Load Balancer에서 고정 세션 사용을 제거합니다.
NCache 캐시 스토리지 확장성: NCache 세션 상태 제공자가 사용하는 NCache 저장용. 여기서 클러스터 캐시를 사용하면 더 나은 확장성을 얻을 수 있습니다. 이를 사용하면 런타임 시 세션 클러스터에 더 많은 서버를 추가할 수 있습니다. 결과적으로 애플리케이션의 확장성과 안정성이 향상됩니다. 웹 팜을 위한 ASP.NET 세션 클러스터링은 데이터베이스에 저장하는 것보다 더 빠르고 확장성이 뛰어납니다.
가용성, 로드 밸런싱, 내결함성: 웹 팜 환경에서는 클러스터 캐시의 모든 서버 노드에서 세션 데이터를 사용할 수 있도록 유지하여 더 큰 로드를 더 잘 처리함으로써 더 나은 내결함성을 제공합니다. 세션이 팜의 여러 서버에 분산될 수 있기 때문입니다. 따라서 높은 성능을 발휘한다고 해도 과언이 아니다. 소규모부터 대규모 웹팜까지 세션 클러스터링에 적합합니다.
클러스터 토폴로지: 세션 캐시의 경우 다양한 클러스터링 토폴로지를 사용할 수 있습니다. 복제된 토폴로지는 클라이언트의 로드 밸런싱을 제공하므로 트래픽이 집중되는 동안 웹 애플리케이션에 문제가 발생하지 않습니다. Partition-Replica 캐시를 사용하면 애플리케이션에 높은 확장성과 높은 신뢰성을 제공하며 매우 빠릅니다. 세션은 여러 웹 서버 또는 여러 전용 세션 캐싱 서버에서 로컬로 복제되거나 분산/분할될 수 있습니다. 캐시 토폴로지에 대한 자세한 내용은 섹션을 참조하세요. 캐시 토폴로지.
캐시의 세션 조회가 쉬워졌습니다. 캐시의 모든 세션 데이터는 단일 호출로 검색할 수 있습니다. NCache 세션에 태그를 제공합니다. 한 번의 작업으로 태그가 포함된 모든 세션 데이터를 쉽게 가져올 수 있습니다.
독점 잠금: 교착 상태 및 데이터 무결성 문제를 방지하기 위해 배타적 잠금이 제공됩니다. NCache 세션 상태 제공자. 잠금은 구성 가능하며 기본적으로 비활성화되어 있습니다.
잠금 해제 재시도: 배타적 잠금을 사용하는 경우 잠금 재시도도 구성됩니다. 동시 요청의 경우 잠금이 해제될 수 있습니다.
위치 선호도: NCache의 세션 상태 공급자의 위치 친화성은 지리적으로 분리된 여러 웹 팜에서 ASP.NET 세션 상태를 관리합니다. 위치 친화성의 경우 각 웹 팜에 대해 하나의 '기본' 캐시와 하나 이상의 '보조' 캐시를 지정해야 합니다. 기본 캐시는 로컬 지역의 모든 로컬 트래픽에 사용되며, 보조 캐시는 지리적으로 멀리 떨어져 있습니다. 이는 애플리케이션의 웹.구성 파일. 이 최적화는 .NET 2.0 이상 버전에서만 가능합니다.
이 섹션의
ASP.NET 세션 상태 공급자 속성
다음을 사용하여 세션을 저장하는 방법을 설명합니다. NCache의 ASP.NET용 세션 상태 공급자.
다중 지역 ASP.NET 세션 상태 공급자 구성
위치 친화성 기능이 어떻게 사용되는지 설명합니다. NCache 여러 지역에 분산된 클러스터형 캐시를 사용하여 웹 팜에 대해 구성할 수 있습니다.
ASP.NET과 ASP 간의 세션 공유.NET Core
ASP.NET 세션을 ASP와 공유하고 업데이트하는 방법을 설명합니다..NET Core 세션과 그 반대.
ASP.NET SignalR Backplane
다음을 사용하여 SignalR을 구성하고 활용하는 방법을 설명합니다. NCache ASP.NET 응용 프로그램에서.
ASP.NET View State 캐싱
뷰 상태 캐싱을 사용하는 방법과 콘텐츠 최적화 기능을 설명합니다. NCache.
ASP.NET 출력 캐싱을 위한 분산 캐시
출력 캐싱을 사용하여 ASP.NET 페이지에 대한 동적 요청의 HTML 출력을 캐시하여 전체 응답 프로세스 속도를 높이는 방법을 보여줍니다.