다음을 통해 공유


Stack Exchange Redis®* 캐싱 개요

.NET .NET Aspire을 사용하면 애플리케이션에서 캐싱을 활용할 수 있는 여러 가지 방법이 있습니다. 인기 있는 옵션 중 하나는 자주 액세스하는 데이터를 저장하는 데 사용할 수 있는 고성능 데이터 저장소인 Stack Exchange Redis사용하는 것입니다. 이 문서에서는 Stack Exchange Redis 캐싱에 대한 개요와 애플리케이션에서 사용하는 데 도움이 되는 리소스에 대한 링크를 제공합니다.

애플리케이션에서 여러 Redis 캐시 통합을 사용하려면 자습서: .NET.NET Aspire 통합로 캐시 구현을 참조하십시오. Azure Redis Cache를 사용하려면 자습서: AzureRedis Cache를 사용하여 .NET Aspire 프로젝트 배포를 참조하세요.

Redis 직렬화 프로토콜(RESP)

Redis 시리얼라이제이션 프로토콜(즉, RESP)은 Redis 클라이언트와의 통신에 사용되는 이진 안전 프로토콜입니다. RESP는 구현하기 쉽고 구문 분석이 효율적인 간단한 텍스트 기반 프로토콜입니다. RESP는 Redis 명령을 보내고 Redis응답을 수신하는 데 사용됩니다. RESP는 빠르고 효율적으로 설계되어 고성능 애플리케이션에서 사용하기에 적합합니다. 자세한 내용은 Redis 직렬화 프로토콜 사양를 참조하세요.

Redis 자체 외에도 .NETRESP의 두 가지 잘 유지 관리된 구현이 있습니다.

  • Garnet: Garnet은 강력한 성능(처리량 및 대기 시간), 확장성, 스토리지, 복구, 클러스터 분할, 키 마이그레이션 및 복제 기능을 제공하는 Microsoft Research의 원격 캐시 저장소입니다. Garnet은 기존 Redis 클라이언트에서 작업할 수 있습니다.
  • Valkey: 캐싱 및 캐싱 외 워크로드를 모두 지원하는 유연한 분산 키-값 데이터 저장소입니다.

.NET Aspire 애플리케이션에서 Redis, Garnet 또는 Valkey RESP 프로토콜을 쉽게 모델링할 수 있으며 요구 사항에 따라 사용할 프로토콜을 선택할 수 있습니다. 모든 .NET AspireRedis 통합은 Redis, Garnet 또는 Valkey RESP 프로토콜과 함께 사용할 수 있습니다.

캐싱

캐싱은 자주 액세스하는 데이터를 메모리에 저장하는 데 사용되는 기술입니다. 이렇게 하면 데이터베이스 또는 웹 서비스와 같은 원래 원본에서 데이터를 검색하는 데 걸리는 시간을 줄일 수 있습니다. 캐싱은 원래 원본에 대한 요청 수를 줄여 애플리케이션의 성능을 크게 향상시킬 수 있습니다. Redis IConnectionMultiplexer 개체에 액세스하려면 Aspire.StackExchange.Redis NuGet 패키지를 사용합니다.

분산 캐싱

분산 캐싱은 여러 서버에 데이터를 저장하는 캐싱의 한 유형입니다. 이렇게 하면 애플리케이션의 여러 인스턴스 간에 데이터를 공유할 수 있으므로 확장성 및 성능을 개선하는 데 도움이 될 수 있습니다. 분산 캐싱을 사용하여 세션 상태, 사용자 프로필 및 자주 액세스하는 데이터와 같은 다양한 데이터를 저장할 수 있습니다. 애플리케이션(IDistributedCache 인터페이스)에서 Redis 분산 캐싱을 사용하려면 Aspire.StackExchange.Redis.DistributedCaching NuGet 패키지를 사용합니다.

출력 캐싱

출력 캐싱은 웹 페이지 또는 API 응답의 출력을 저장하는 캐싱 유형입니다. 이렇게 하면 매번 처음부터 생성하지 않고 캐시에서 직접 응답을 처리할 수 있습니다. 출력 캐싱은 응답을 생성하는 데 걸리는 시간을 줄여 웹 애플리케이션의 성능을 향상시키는 데 도움이 될 수 있습니다. 애플리케이션에서 OutputCache 특성 또는 CacheOutput 메서드와 함께 선언적 Redis 출력 캐싱을 사용하려면 Aspire.StackExchange.Redis.OutputCaching NuGet 패키지를 사용합니다.

참고:

*: Redis는 Redis Ltd의 등록 상표입니다. 그 안에 있는 모든 권리는 Redis Ltd에 귀속되어 있습니다. Microsoft에 의한 모든 사용은 참조 목적에 의한 것이며, Redis와 Microsoft 간의 후원, 보증 또는 소속을 나타내지 않습니다. 상위로 돌아가기?