Repolode
microsoft

microsoft/garnet

기존 Redis 클라이언트를 수정 없이 연결할 수 있도록 Redis RESP 프로토콜을 지원하는 C# 원격 캐시 저장소입니다.

대체할 수 있는 제품:Redis

스타
12,077
포크
722
열린 이슈
81
마지막 커밋
22시간 전

어떤 프로젝트인가요?

Garnet은 Microsoft Research에서 개발한 원격 캐시 저장소입니다. RESP 와이어 프로토콜을 채택해 C#용 StackExchange.Redis 같은 Redis 클라이언트를 수정하지 않고도 연결할 수 있습니다. 다수의 클라이언트 연결과 소규모 배치에서 높은 처리량을 내고, 클라우드 환경에서 클라이언트 지연 시간을 낮추는 것을 목표로 합니다.

Garnet은 키 만료 기능이 있는 기본 문자열 연산과 HyperLogLog, 비트맵, 정렬된 집합, 리스트, 해시 등 다양한 객체 유형을 지원합니다. 클라이언트 측 RESP 트랜잭션, 서버 측 저장 프로시저, C#으로 작성하는 사용자 지정 확장을 통해 여러 키에 대한 트랜잭션을 처리할 수 있습니다. Lua 스크립트도 지원하며, TLS는 .NET의 SslStream을 통해 제공됩니다.

스토리지 계층인 Tsavorite는 메모리, SSD, 클라우드 스토리지에 데이터를 계층화할 수 있으며, 내구성을 위해 체크포인팅, 복구, 작업 로깅을 지원합니다. 클러스터 모드에서는 샤딩, 복제, 동적 키 마이그레이션을 지원하고, 관리를 위해 표준 Redis 클러스터 명령을 제공합니다. 프리뷰 기능으로 근사 최근접 이웃 검색을 위한 벡터 집합과 키에 대한 범위 인덱스가 포함됩니다.

핵심 기능

  • 01RESP 프로토콜을 통해 수정하지 않은 Redis 클라이언트와 호환됩니다.
  • 02문자열, HyperLogLog, 비트맵, 정렬된 집합, 리스트, 해시, 지리 공간 유형을 지원합니다.
  • 03C#으로 사용자 지정 연산과 저장 프로시저를 작성할 수 있습니다.
  • 04TLS 통신과 기본적인 액세스 제어를 제공합니다.
  • 05체크포인팅과 복구 기능을 제공하며 메모리, SSD, 클라우드에 걸쳐 스토리지를 계층화합니다.
  • 06샤딩, 복제, 키 마이그레이션을 지원하는 클러스터 모드를 제공합니다.

활용 사례

  • 기존 클라이언트 코드를 유지하면서 .NET 서비스의 Redis 캐시를 대체할 때
  • 다수의 클라이언트가 소규모 요청을 보내는 높은 동시성 워크로드를 처리할 때
  • Redis 호환 서버에서 C#으로 사용자 지정 캐시 로직이나 데이터 유형을 구현할 때
  • 클라우드 VM에서 샤딩 및 복제된 캐시 클러스터를 운영할 때

빠른 시작

  1. 1

    프로젝트 문서의 시작하기 가이드를 따르세요

사용 전 알아둘 점

  • Vector Sets와 Range Index는 미리 보기 단계입니다.
  • Cluster mode는 수동적이며 leader election을 구현하지 않습니다. 외부 control plane에서 cluster commands를 내려야 합니다.

포함된 컬렉션

토픽

자주 묻는 질문

garnet은(는) 무엇인가요?
기존 Redis 클라이언트를 수정 없이 연결할 수 있도록 Redis RESP 프로토콜을 지원하는 C# 원격 캐시 저장소입니다. Garnet은 Microsoft Research에서 개발한 원격 캐시 저장소입니다. RESP 와이어 프로토콜을 채택해 C#용 StackExchange.Redis 같은 Redis 클라이언트를 수정하지 않고도 연결할 수 있습니다. 다수의 클라이언트 연결과 소규모 배치에서 높은 처리량을 내고, 클라우드 환경에서 클라이언트 지연 시간을 낮추는 것을 목표로 합니다.
garnet은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
garnet은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
garnet은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. garnet의 마지막 커밋은 2026년 11월 5일입니다.
garnet은(는) 어디에 사용할 수 있나요?
기존 클라이언트 코드를 유지하면서 .NET 서비스의 Redis 캐시를 대체할 때 다수의 클라이언트가 소규모 요청을 보내는 높은 동시성 워크로드를 처리할 때 Redis 호환 서버에서 C#으로 사용자 지정 캐시 로직이나 데이터 유형을 구현할 때 클라우드 VM에서 샤딩 및 복제된 캐시 클러스터를 운영할 때
garnet는 어떻게 설치하나요?
프로젝트 문서의 시작하기 가이드를 따르세요
garnet은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/microsoft/garnet

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트