클라이언트 라이브러리

Azure Cache for Redis는 자주 사용되는 오픈 소스 메모리 내 데이터 저장소인 오픈 소스 Redis를 기반으로 합니다. Azure Cache for Redis는 다양한 프로그래밍 언어의 다양한 Redis 클라이언트에서 액세스할 수 있습니다. 각 클라이언트 라이브러리에는 Redis 명령을 사용하여 Redis 서버를 호출하는 자체 API가 있지만 클라이언트 라이브러리는 모든 Redis 서버와 통신하도록 빌드되었습니다.

각 클라이언트는 해당 라이브러리에 대한 자체 참조 설명서를 유지 관리합니다. 클라이언트는 클라이언트 라이브러리 개발자 커뮤니티를 통해 지원을 받을 수 있는 링크도 제공합니다. Azure Cache for Redis 팀은 개발 또는 클라이언트 라이브러리에 대한 지원을 소유하지 않습니다.

Microsoft는 클라이언트 라이브러리를 소유하거나 지원하지 않지만 일부 라이브러리를 권장합니다. 권장 사항은 인기도와 사용자의 질문에 지원하고 답변할 수 있는 활성 온라인 커뮤니티가 있는지 여부를 기반으로 합니다. 사용 가능한 최신 버전만 사용하고 새 버전을 사용할 수 있게 되면 정기적으로 업그레이드하는 것이 좋습니다. 이러한 라이브러리는 현재 개발 중이며 안정성과 성능이 개선된 새 버전을 릴리스하는 경우가 많습니다.

클라이언트 라이브러리 언어 GitHubrepo 설명서
StackExchange.Redis C#/.NET 링크 자세한 내용은 여기를 참조하세요.
Lettuce Java 링크 자세한 내용은 여기를 참조하세요.
Jedis Java 링크
node_redis Node.js 링크
Redisson Java 링크 자세한 내용은 여기를 참조하세요.
ioredis Node.js 링크 자세한 내용은 여기를 참조하세요.

참고 항목

애플리케이션은 Azure Cache for Redis 인스턴스를 오픈 소스 Redis와도 통신할 수 있는 모든 클라이언트 라이브러리에 연결하고 사용할 수 있습니다.

클라이언트 라이브러리 관련 참고 자료

클라이언트 라이브러리별 지침 모범 사례에 대한 정보는 다음 링크를 참조하세요.

Redisson(Java)

redisson 3.14.1 이상을 사용하는 것이 권장됩니다. 이전 버전에는 장애 조치(failover) 후 문제를 초래하는 알려진 연결 누수 문제가 있습니다. 애플리케이션에서 사용하는 기능에 영향을 줄 수 있는 다른 알려진 문제에 대해 Redisson 변경 로그를 모니터링합니다. 자세한 내용은 CHANGELOGRedisson FAQ를 참조하세요.

기타 참고 사항:

  • Redisson은 다른 클라이언트와 달리 기본적으로 '복제본에서 읽기' 전략을 사용합니다. 이를 변경하려면 'readMode' 구성 설정을 수정합니다.
  • Redisson에는 구성 가능한 최소 및 최대 설정이 있는 연결 풀링 전략이 있으며 기본 최소값은 큽니다. 큰 기본값은 공격적인 다시 연결 동작 또는 '연결 폭풍'에 기여할 수 있습니다. 위험을 줄이려면 몇 개의 연결을 통해 명령 또는 명령 일괄 처리를 효율적으로 파이프라인할 수 있으므로 더 적은 수의 연결을 사용하는 것이 좋습니다.
  • Redisson은 기본 유휴 연결 시간 제한이 10초이며, 이로 인해 이상적인 것보다 더 많은 연결이 닫히고 다시 열리게 됩니다.

다음은 필요에 따라 수정할 수 있는 클러스터 모드에 권장되는 기본 구성입니다.

clusterServersConfig:
  idleConnectionTimeout: 30000
  connectTimeout: 15000
  timeout: 5000
  retryAttempts: 3
  retryInterval: 3000
  checkLockSyncedSlaves: false
  failedSlaveReconnectionInterval: 15000
  failedSlaveCheckInterval: 60000
  subscriptionsPerConnection: 5
  clientName: "redisson"
  loadBalancer: !<org.redisson.connection.balancer.RoundRobinLoadBalancer> {}
  subscriptionConnectionMinimumIdleSize: 1
  subscriptionConnectionPoolSize: 50
  slaveConnectionMinimumIdleSize: 2
  slaveConnectionPoolSize: 24
  masterConnectionMinimumIdleSize: 2
  masterConnectionPoolSize: 24
  readMode: "MASTER"
  subscriptionMode: "MASTER"
  nodeAddresses:
  - "redis://mycacheaddress:6380"
  scanInterval: 1000
  pingConnectionInterval: 60000
  keepAlive: false
  tcpNoDelay: true

Azure에서 IBM Liberty의 HTTP 세션 상태에 대한 저장소로 JCache에 대한 Redisson 지원을 사용하는 방법을 보여 주는 문서는 AKS(Azure Kubernetes Service) 클러스터에서 Open Liberty 또는 WebSphere Liberty와 함께 Java EE JCache 사용을 참조하세요.

클라이언트 라이브러리 사용 방법

참조 설명서 외에도 다양한 언어 및 캐시 클라이언트를 사용하여 Azure Cache for Redis를 시작하는 방법을 보여 주는 자습서를 찾을 수 있습니다.

자습서에서 이러한 클라이언트 라이브러리 중 일부를 사용하는 방법에 대한 자세한 내용은 다음 문서를 참조하세요.

다음 단계