ASP.NET 세션 상태 공급자 NCache 웹 팜에서

온프레미스 배포의 경우, ASP.NET 세션 상태는 세 가지 기본 제공 저장소 옵션(InProc, StateServer, SqlServer)과 네 번째 "사용자 지정" 옵션을 제공합니다. 처음 두 가지 기본 제공 옵션(InProc StateServer)은 확장성 문제가 있는 반면, SqlServer 옵션은 성능과 확장성 모두에 문제가 있습니다.

훨씬 더 나은 전략은 "사용자 지정" 옵션과 플러그인을 사용하는 것입니다. NCache 너처럼 ASP.NET 세션 상태 공급자. NCache .NET용으로 매우 빠르고 확장 가능한 오픈 소스 분산 캐시입니다. 런타임에 더 많은 캐시 서버를 추가하고 선형적으로 확장할 수 있도록 하여 극심한 트랜잭션 로드를 처리합니다. NCache 또한 지능형 기능을 제공합니다 캐시 복제 따라서 웹 서버나 캐시 서버가 다운되더라도 ASP.NET 세션 상태가 손실되지 않습니다.

아키텍처 다이어그램 NCache 웹 팜 환경에서 ASP.NET 세션 상태 공급자를 사용하는 예시로, 상태 비저장 웹 서버 계층이 선형적으로 확장 가능한 동적 캐시 클러스터에 연결된 구조를 보여줍니다.
NCache ASP.NET 웹 팜을 위한 분산 세션 아키텍처.

Benefits of NCache ASP.NET 세션 상태 공급자

구현 NCache 세션 상태 공급자(SSP)를 사용하려면 코드 변경이 전혀 필요하지 않습니다. 다음 단계를 따르기만 하면 됩니다.

  1. 설치 전에, NCache NuGet 패키지 관리자를 통해 Session Provider NuGet 패키지를 설치하세요.
  2. 구성 "사용자 지정" 세션 모드를 사용하려면 web.config 파일을 수정하세요.
  3. 지정 your NCache 공급자 구성의 클러스터 이름 및 설정.

설정 방법에 대한 자세한 내용을 참조하세요. ASP.NET 세션 상태 공급자 을 통한 NCache. 다음은 사용 시 얻을 수 있는 몇 가지 이점입니다. NCache ASP.NET 세션 상태 공급자로:

  1. 고가용성:NCache 있다 자가 치유 피어 투 피어 클러스터링 아키텍처 단일 장애 지점이 없어 ASP.NET 세션 상태 저장소에 100% 가동 시간을 보장하며, 이는 비즈니스 크리티컬 애플리케이션에 매우 중요합니다. 이러한 고가용성 기능 덕분에 NCache 전자상거래, 금융 서비스 및 의료 분야의 미션 크리티컬 애플리케이션에 가장 적합한 선택으로, 거래 무결성을 위해 세션 지속성이 필수적입니다.
  2. 선형 확장성:NCache 당신은 할 수 있습니다 캐시 클러스터를 선형으로 확장 클러스터에 더 많은 캐시 서버를 추가하여 이렇게 하면 트랜잭션 용량과 저장 용량이 늘어납니다. 즉, ASP.NET 세션 상태 저장소는 트랜잭션 로드가 많을 때 응용 프로그램에 병목 현상이 발생하지 않습니다.
  3. 지능형 세션 복제:NCache 풍부한 캐싱 토폴로지를 제공합니다(미러링된 캐시, 복제된 캐시예산 및 파티션 복제본 캐시) 성능과 확장성을 저해하지 않는 지능형 세션 복제 기능을 제공합니다. 이를 통해 웹 서버나 캐시 서버가 다운되어도 세션 데이터가 손실되지 않습니다.
  4. 빠른 컴팩트 직렬화:NCache 를 제공합니다 컴팩트 직렬화 일반 .NET 직렬화보다 빠르고 프로그래밍 없이도 사용할 수 있습니다. .NET 클래스를 등록하기만 하면 됩니다. NCache 효율적인 사용을 위해 런타임에 직렬화 코드를 자동 생성하고 컴파일합니다.

여러 지역(데이터 센터)에 걸쳐 ASP.NET 세션을 관리하는 방법은 무엇입니까?

NCache 여러 지역(데이터 센터)에서 실행되는 애플리케이션의 ASP.NET 세션 상태를 관리하고 세션 일관성을 유지하는 두 가지 방법을 제공합니다. 다음과 같습니다.

  1. ASP.NET 세션 상태의 WAN 복제: NCache 를 제공합니다 브리지 토폴로지 전체 ASP.NET 세션 상태 저장소(분산 캐시)를 다른 지역(데이터 센터)에 복제할 수 있도록 합니다. WAN이렇게 하면 세션이 항상 여러 지역(데이터 센터)에 존재합니다. 이 기능은 액티브-패시브(재해 복구용) 또는 액티브-액티브 모드로 사용할 수 있습니다. 액티브-액티브 모드에서는 여러 지역(데이터 센터) 간의 트래픽 부하를 분산할 수도 있습니다. 이 모든 기능은 구성 변경을 통해 수행됩니다.

  2. 다중 지역 ASP.NET 세션 상태: 대역폭 소모 비용으로 인해 WAN을 통해 ASP.NET 세션 상태를 복제하지 않으려면 다음을 사용할 수 있습니다. 다중 사이트 ASP.NET 세션 상태 특징 NCache이 경우 ASP.NET 세션 상태는 사이트 간에 복제되지 않고 생성 위치에 저장됩니다. 하지만 한 지역(데이터 센터)에서 다른 지역(데이터 센터)으로 트래픽을 이동하면 ASP.NET 세션 상태도 함께 이동합니다. 이를 통해 두 개 이상의 활성 지역(데이터 센터)을 운영할 수 있으며, 각 지역(데이터 센터)은 대부분의 트래픽을 로컬로 유지하지만, 필요에 따라 다른 지역으로 트래픽이 오버플로되는 경우가 있습니다.

    또한, 다른 데이터 센터에서도 사용자의 세션에 접근할 수 있으므로 사용자에게 어떠한 중단도 일으키지 않고 한 데이터 센터를 중단할 수도 있습니다.

고급 기능 NCache ASP.NET 세션 상태 공급자

The NCache ASP.NET 세션 상태 공급자는 모든 표준을 구현합니다. ASP.NET 세션 상태 공급자 기능. 또한, 애플리케이션의 복잡한 상황을 처리할 수 있도록 다양한 고급 기능을 제공합니다.

  1. 애플리케이션 도메인 간 세션 공유: 귀하의 애플리케이션이 별도의 여러 애플리케이션 도메인을 사용하는 경우 웹.구성 파일, 동일한 sessionAppId 설정(예: "NCache모든 애플리케이션의 "App1")은 해당 도메인 간 세션 공유를 활성화합니다. 다른 세션 앱 ID를 사용하면 애플리케이션 도메인 간에 세션이 공유되지 않습니다.
  2. 오류 로깅: 활성화 할 수 있습니다. 오류 로깅 웹 서버의 로그 파일에 ( INSTALL_DIR\NCache\log-files\SessionStoreProvider 폴더)를 지정하여 enableLogs = "true". 다음을 지정하여 Windows 이벤트 로그에 대한 오류 로깅을 활성화할 수도 있습니다. writeExceptionsToEventLog = "true".
  3. 표준 세션 잠금: 표준 ASP.NET 세션 잠금 동작은 세션이 잠긴 경우, 해당 세션에 대한 다른 요청이 90초(설정 가능) 동안 대기하고, 종료 시 세션의 잠금을 강제 해제하는 것입니다. 이 옵션은 다음과 같이 지정할 수 있습니다.

    enableSessionLocking = "true" sessionLockingRetry = "-1" emptySessionWhenLocked = "false"
  4. 향상된 세션 잠금: 트래픽이 많은 ASP.NET 애플리케이션에서 로봇이 데이터를 스크래핑하고 수백 또는 수천 건의 요청에 동일한 세션 ID를 동시에 사용하는 경우, 90초 동안 기다리면 사용 가능한 모든 소켓이 부족해질 수 있으므로 표준 세션 잠금 옵션을 사용할 여유가 없습니다. 대신, 요청을 신속하게 반환하여 실패를 알리고 싶을 수 있습니다. 다음과 같이 지정할 수 있습니다.

    enableSessionLocking = "true" sessionLockingRetry = "5" emptySessionWhenLocked = "false"

    이 기능은 0.5초 간격으로 5번 재시도한 후 실패를 나타내기 위해 빈 세션을 반환합니다.

  5. 기업용 활용 사례: 이 강화된 잠금 동작은 트래픽이 많은 항공사 웹사이트를 위해 특별히 설계되었으며, 집중적인 로봇 스크래핑 및 높은 동시 접속 이벤트 동안 시스템 전반의 소켓 고갈을 방지합니다.

다음에 무엇을할지?

자주 묻는 질문 (FAQ)

예. 각 애플리케이션의 web.config 파일에 일치하는 sessionAppId를 구성하면 됩니다. NCache 이 기능을 사용하면 서로 다른 애플리케이션 도메인 간에 세션 상태를 공유할 수 있습니다. 이는 사용자가 동일한 세션 내에서 여러 하위 애플리케이션 간에 이동하는 환경에 이상적입니다.

예. NCache 세션 관리를 위한 "제로 코드" 솔루션입니다. 웹 설정 파일(web.config)에서 sessionState 모드를 "Custom"으로 변경하고 다음 설정을 지정하기만 하면 됩니다. NCache 제공업체입니다. 애플리케이션을 다시 컴파일할 필요가 없습니다.

NCache 지능형 세션 복제 기능을 갖춘 자가 ​​복구형 피어 투 피어 클러스터링 아키텍처를 사용합니다. 파티션-복제본과 같은 토폴로지를 사용하여, NCache 각 세션의 백업을 다른 노드에 생성하여 웹 서버나 캐시 서버가 다운되더라도 100% 가동 시간과 데이터 무결성을 보장합니다.

NCache Microsoft는 메모리 기반 분산 캐시인 반면, SQL Server는 디스크 기반 데이터베이스입니다. NCache SQL Server와 관련된 데이터베이스 병목 현상 및 과도한 직렬화 비용을 제거하여 선형 확장성과 세션 검색에 대한 밀리초 미만의 응답 시간을 제공합니다.

예. NCache 이 시스템은 다중 지역 지원을 위한 두 가지 주요 기능을 제공합니다. 첫째는 능동-수동 또는 능동-능동 재해 복구를 위한 WAN 복제(브리지 토폴로지 경유)이고, 둘째는 다중 사이트 세션으로, 트래픽이 재라우팅될 경우 세션이 사용자 로컬에 유지되면서 데이터 센터 간에 이동할 수 있도록 합니다.

문의하기

전화

+1 214-619-2601 (미국)

© 저작권 Alachisoft 2002 - . 판권 소유. NCache 는 Diyatech Corp.의 등록상표입니다.