NCache, 분산되고 선형적으로 확장 가능하며 빠른 인 메모리 키-값 저장소 개체 캐싱을 통해 데이터베이스 이동을 줄이고 더 높은 부하를 쉽게 확장할 수 있습니다. 비슷하게, Redis 또한 분산 캐싱 솔루션이지만 다음과 같은 주요 기능이 없습니다. SQL & LINQ 지원, 클라이언트 캐시(InProc) 와 피어 투 피어 클러스터링 등. .NET의 경우 Redis 클라이언트 애플리케이션, NCache StackExchange와 동일한 래퍼 API를 제공합니다.Redis 사용자가 쉽게 이동할 수 있는 API NCache 최소한의 코드 변경으로.
따라서 실제 단계는 마이그레이션에 대해 배우는 것입니다. Redis 에 NCache. 이 블로그는 원활한 마이그레이션을 위해 수행해야 할 작업에 대한 단계별 가이드를 제공합니다. Redis 에 NCache.
필요 NCache 래퍼 Redis .NET 및 .NET Core
위에서 말한 모든 것을 이제 상상해보십시오. Redis 순수 .NET/을 사용하는 클라이언트.NET Core 최소한의 코드 변경과 기능 추가로 포팅을 원하는 애플리케이션. 그는 어떻게 해야 합니까? 사용 NCache! 그것은 많은 기능과 원활한 마이그레이션을 제공합니다. Redis 에 NCache.
다만, 사용을 위해 NCache 자신있는 Redis 클라이언트 응용 프로그램을 사용하려면 많은 것을 배워야 합니다. NCache, 제공되는 기능 및 통합 NCache 동시에 다른 기능을 수행합니다. 배포된 응용 프로그램은 반복해서 다시 테스트해야 하므로 비용이 많이 들고 번거로운 프로세스가 됩니다.
그래서, NCache 위에서 언급한 문제를 매우 현명하게 해결했습니다. 래퍼를 구현했습니다. NCache StackExchange와 동일한 API입니다.Redis API. 이것이 표준 StackExchange입니다.Redis 최소한의 코드 변경이 필요한 API Redis 확장 가능한 방식으로 사용하기 위해 클라이언트 응용 프로그램 NCache.
활용 방법 NCache 래퍼 Redis 용이하게
에서 마이그레이션할 때 가장 좋은 점은 Redis 에 NCache 코드가 없고 마이그레이션에 논리 변경이 필요하지 않기 때문에 편리합니다. 스택익스체인지.Redis API의 동작은 전체적으로 동일합니다. NCache 와 통합 Redis 클라이언트 응용 프로그램.
사용자는 파일 다운로드와 함께 캐시에 대한 액세스를 제공하기 위해 몇 가지 네임스페이스를 편집하기만 하면 됩니다. NuGet 패키지 전체 지원서가 준비되었습니다. 샘플 애플리케이션과 함께 이 래퍼의 소스 코드는 다음 위치에 업로드됩니다. GitHub의.
1 단계 : 다운로드 NCache Redis 래퍼 NuGet
NCache 를 제공합니다 NuGet 패키지 StackExchange에 설치해야 합니다.Redis 애플리케이션. NuGet 패키지에는 클라이언트.ncconf 액세스할 캐시 클라이언트를 구성하는 데 사용되는 파일 NCache 클라이언트 시스템에서 클러스터.
1 |
Install-Package NCache.StackExchange.Redis |
2단계 애플리케이션에 네임스페이스 추가
애플리케이션 및 소스 파일에 다음 네임스페이스를 추가합니다.
1 |
NCache.StackExchange.Redis |
3 단계 : 캐시에 연결하고 NCache 데이터베이스
다음 단계는 다음을 통해 캐시에 연결하는 것입니다. ConnectionMultiplexer 클래스 이는 StackExchange의 중심 객체입니다.Redis 여러 서버의 세부 정보를 숨기는 API입니다. 작업이 원활하게 수행될 수 있도록 캐시가 실행 중인지 확인하십시오. 당신은 또한 배울 수 있습니다 캐시를 만드는 방법 단계별 가이드에서 NCache 선적 서류 비치.
1 |
ConnectionMultiplexer ncache = ConnectionMultiplexer.Connect(“cacheName”); |
처럼 NCache ~을 제공하다 아이캐시 인스턴스를 얻기 위한 인터페이스 NCache의 캐시, 돈을 받아가세요NCache인터페이스 를 통해 캐싱을 얻는 것입니다. Redis 인터페이스.
1 |
ICache cache = ncache.GetNCacheInterface(“cacheName”); |
액세스하는 것과 마찬가지로 Redis 데이터베이스, 사용이 매우 간단합니다. NCache 아래와 같이 래퍼로.
1 |
var db = ncache.GetDatabase(); |
또한 나머지 애플리케이션과 함께 StackExchange를 계속 사용할 수 있습니다.Redis API는 코드 변경 없이 이전에 사용하던 방식과 동일합니다.
애플리케이션이 NCache 캐시 클러스터를 사용하면 작업을 매우 쉽게 수행할 수 있습니다. Redis 이제 응용 프로그램이 다음으로 마이그레이션되었습니다. NCache. 따라서 몇 단계만 거치면 전체 마이그레이션이 완료됩니다. Redis ~에 신청 NCache 어떤 번거 로움없이.
NCache 래퍼 Redis 고객?
사용 NCache A에 대한 Redis 클라이언트 애플리케이션은 다음과 같은 이점을 제공합니다.
-
- SQL 쿼리 및 LINQ: NCache 객체 속성, 그룹/하위 그룹, 태그 와 명명된 태그 이렇게 하면 캐시에 저장된 데이터를 정말 쉽게 검색할 수 있습니다.
- 서버측 코드(.NET): NCache 배포할 수 있습니다. 서버 측 코드 클러스터의 캐시 서버에서 실행합니다. .NET에서 서버측 코드를 개발하고 배포할 수 있도록 다양한 기능 세트가 제공됩니다. 일부 기능은 다음과 같습니다. 전체 읽기, 연속 기입 와 캐시 로더.
- 캐시를 최신 상태로 유지(종속성): NCache 캐시가 항상 최신 상태인지 확인하고 데이터 무결성을 자신 있게 신뢰할 수 있습니다. 캐시의 데이터가 오래되면 즉시 데이터베이스의 데이터로 업데이트됩니다. NCache 이 목적을 위해 다음과 같은 기능 목록을 제공합니다. 데이터베이스와 캐시 동기화 와 종속성 같지 않은 Redis 만료를 통해서만 제공됩니다.
- 캐시 성능(클라이언트 캐시(InProc 속도)): NCache 이벤트 클라이언트 캐시 (Near Cache) 기본적으로 애플리케이션(InProc/OutProc)에 매우 가까운 로컬 캐시입니다. 이는 응용 프로그램에 InProc 속도를 제공하므로 개체를 더 빠르게 검색할 수 있습니다.
결론
요약하자면, 우리가 블로그에서 배운 것은 NCache 래퍼를 사용하면 전체 Redis ~에 신청 NCache 일련의 간단한 단계를 따르면 됩니다. 당신은 쉽게 사용할 수 있습니다 NCache의 기능을 사용하여 NCache Redis 코드 변경이 없는 래퍼와 원래 StackExchange.Redis API. 다른 많은 에서 제공하는 기능 NCache 애플리케이션의 성능을 향상시키고 원하는 확장성을 달성하도록 도와줍니다.
NCache 세부 정보 다운로드 NCache 판 비교