귀하의 비즈니스가 데이터에 크게 의존하는 경우, 특히 트래픽이 많은 시스템인 경우 데이터 손실 가능성이 조금이라도 감지되면 경보 벨이 울리게 될 것입니다. 게다가 재해 복구라는 아이디어는 그야말로 악몽이 아닐 수 없습니다.
특히 캐싱 계층을 통합한 경우 캐시 데이터(특히 임시 데이터)는 정의에 따라 휘발성이기 때문입니다. 이 임시 데이터는 ASP.NET 세션, 애플리케이션에서 생성된 임의 데이터 또는 집계된 데이터일 수 있습니다. 또한, 다른 캐시 데이터가 손실되면 데이터베이스에서 다시 로드되어 성능이 저하됩니다. 이는 누구도 원하지 않습니다.
운 좋게도 NCache 분산 캐싱 솔루션을 다룰 때 피크 부하 장애, 시스템 중단 등이 불가피한 문제라는 이해를 바탕으로 만들어졌습니다. 따라서 가능한 모든 곳에서 사용 가능한 높은 캐시 데이터를 보장하려고 시도합니다.
따라서 다음을 사용하여 재해 복구를 계획하세요. NCache 최대한 빨리 안내해 드리겠습니다. 캐싱 계층에 대한 철저한 위험 평가(즉, 민감한 데이터 식별, 데이터 센터를 고려하는 경우 패시브 사이트 지정 등)를 수행한 후에는 가능한 복구 과정을 식별해야 합니다. 그런 다음 전략이 제대로 작동하는지 확인하기 위해 구현 후 몇 가지 훈련을 실행해야 합니다. 아래에서 이러한 방법 중 몇 가지를 살펴보겠습니다.
어떻게 NCache 이걸 도와 줘?
NCache 재해 복구를 위한 여러 가지 비상 상황을 사용자에게 제공하며 가장 필수적인 것은 다음과 같습니다.
높은 A가용성 NCache C광택s
인메모리 분산 데이터 캐싱 솔루션으로, NCache 는 앞서 설명한 트래픽이 많거나 시스템 다운타임이 있는 기간에도 높은 데이터 가용성을 보장하는 아키텍처를 제공합니다. PXNUMXP 아키텍처는 단일 실패 지점과 관련된 문제를 방지합니다.
또한 고가용성을 보장하는 다양한 캐싱 토폴로지를 제공합니다. 그것들은 다음과 같습니다:
- 미러 토폴로지: 두 개의 노드가 있는 클러스터로, 그 중 하나는 활성 노드이고 패시브 노드에서 미러링됩니다.
- 복제된 토폴로지: 각 노드에 동일한 데이터가 복제되어 있는 클러스터입니다.
- 복제 토폴로지의 분할: 모든 파티션이 서로 다른 서버에 복제되고 복제본이 수동인 파티션으로 분할된 클러스터입니다. 즉, 활성 노드가 작동하지 않거나 영구적으로 사용할 수 없는 것으로 확인될 때까지 클라이언트가 해당 노드에 연결할 수 없습니다.
이러한 토폴로지는 애플리케이션 요구 사항에 따라 고가용성을 위해 필요한 것일 수 있습니다. 이를 통합할 때 생성된 다양한 복제본이 캐시 데이터를 잃지 않도록 보장합니다. 예를 들어 미러링된 토폴로지에서는 활성 노드가 손실되면 이전 수동 노드에서 완전한 복제본을 사용할 수 있습니다. 마찬가지로 POR 토폴로지에서는 활성 노드가 죽은 것으로 간주되어 파티션이 손실되면 해당 복제본을 사용하여 서비스를 시작할 수 있습니다. 그리고 복제된 토폴로지에서 모든 노드에는 고가용성을 보장하는 전체 캐시의 복사본이 있습니다.
또한 PXNUMXP 아키텍처를 통해 다음과 같은 기능을 제공합니다. 자가 치유 동적 클러스터링. 이 TCP 기반 동적 클러스터는 클러스터를 중지하지 않고도 100% 가동 시간을 제공합니다. 더 나아가, NCache의 로드 밸런싱 기능은 트래픽을 보다 효율적으로 분산하여 서버의 과부하가 처음부터 발생하는 것을 방지하므로 이 설정에 완벽하게 적합합니다. 분명히 고가용성을 찾고 있다면 다음을 살펴봐야 합니다. NCache.
실시간 데이터 지속성
단지 추가적인 마음의 평화를 원하는 사람들을 위한 기능입니다. 고집 내구성 있는 저장 및 데이터 백업을 위해 특정 위치에 데이터를 쓰는 프로세스를 말합니다. 지속성 저장소 내에 항목을 저장하는 전체 메커니즘은 비동기식이며 지속성 대기열을 통해 발생합니다.
캐시를 다시 시작하면 전체 캐시가 자동으로 다시 채워집니다. 여기에는 사용자 구성이 필요하지 않습니다(지속성 저장소를 이미 설정한 경우). 말할 것도 없이, 클러스터의 모든 노드는 누락된 데이터가 있는 경우 중앙 집중식 저장소에 액세스하여 다시 채울 수 있습니다.
WAN 복제
트랜잭션이 많은 애플리케이션의 재해 복구와 가장 밀접하게 관련된 설정은 하나 이상의 데이터 센터를 보유하는 것입니다. 여기서 하나의 활성 데이터 센터에는 이러한 목적을 위해 일반적으로 다른 지리적 위치에 있는 수동 데이터 센터가 있습니다.
따라서, NCache 를 통해 WAN 복제 기능을 제공합니다. 다리. 활성-수동 구성에서는 배포합니다. NCache 활성 사이트와 수동 사이트 모두에서 활성 사이트에 브리지 토폴로지를 만듭니다. 모든 애플리케이션 업데이트는 활성 사이트의 캐시에서 브리지로 이루어지며 브리지는 이를 밀리초 내에 수동 사이트로 비동기식으로 보냅니다(여기서 유일한 지연은 데이터 센터가 멀리 떨어져 있는 경우의 대기 시간입니다).
그러나 비동기식 복제는 각 사이트의 애플리케이션과 캐시가 해당 데이터가 다른 데이터 센터에 복제될 때까지 기다리지 않는다는 것을 의미합니다. 데이터 업데이트는 XNUMX노드 클러스터인 브리지의 대기열에 있습니다. XNUMX개 이상의 데이터 센터가 있는 경우 브리지는 들어오는 업데이트를 여러 활성 사이트에 병렬로 적용합니다. 또한 브리지는 대량 업데이트를 수행합니다. 따라서 여러 데이터 항목을 단일 요청으로 결합하고 이를 단일 대량 요청으로 다른 사이트에 보내 네트워크 이동을 줄일 수 있습니다.
재해로 인해 활성 사이트가 다운되면 애플리케이션과 마찬가지로 브리지도 다운됩니다. 따라서 패시브 사이트는 모든 애플리케이션 트래픽을 처리하여 활성화되어야 합니다. 모든 데이터는 사용자에게 지장을 주지 않고 원래 활성 사이트에서 원래 수동 사이트로 이미 복제되었습니다. 따라서 모든 업데이트는 여기에서 발생하지만 사용자에게는 중단이 표시되지 않습니다.
원래 활성 사이트가 다시 작동되면 새 활성 사이트(원래 수동 사이트)에 연결되어 자체적으로 완전히 동기화됩니다. 동기화가 완료되면 두 데이터 센터 모두 활성-활성 상태가 됩니다. 이는 모든 트래픽이 원래 수동 사이트로 이동하는 경우에도 발생합니다. 이 시점에서 모든 트래픽을 원래 활성 사이트로 오프로드할 수 있습니다. 그런 다음 브리지에서 활성-활성 사이트의 상태를 다시 수동으로 변경할 수 있습니다. NCache 런타임에 이 모든 작업을 수행할 수 있습니다.
백업 및 복원
특정 버전의 데이터가 중요한 경우 다음을 사용할 수 있습니다. NCache의 캐시 데이터 가져오기/내보내기 특징. Import-CacheData PowerShell cmdlet을 사용할 수 있으며, 내보낸 후에는 Import-CacheData cmdlet을 사용하여 관련 Lucene 문서와 함께 캐시의 기존 백업에 있는 모든 항목을 가져올 수 있습니다.
결론
NCache 사용자에게 고가용성을 보장하는 몇 가지 강력한 도구를 제공합니다. 대부분의 경우 이러한 도구(주로 토폴로지, 아키텍처 및 WAN 복제)는 재해 시나리오에서 심각한 데이터 손실이 발생하는 것을 방지합니다. 그 다음에, NCache 한 단계 더 나아가 최악의 경우 백업을 보장하기 위해 두 가지 유형의 백업 생성을 허용합니다. 그러니 다운로드하세요 NCache 지금 좋은 시기와 나쁜 시기를 안내하는 캐싱 솔루션을 설정하세요.