Clientbibliotheken

Azure Cache for Redis basiert auf Open-Source-Redis, dem beliebten Open-Source-basierten In-Memory-Datenspeicher. Der Zugriff auf Azure Cache for Redis kann über eine Vielzahl von Redis-Clients für zahlreiche Programmiersprachen erfolgen. Jede Clientbibliothek verfügt über eine eigene API, die Aufrufe an Redis-Server mittels Redis-Befehlen sendet, doch die Clientbibliotheken sind so konzipiert, das sie mit jedem Redis-Server kommunizieren.

Für jeden Client wird eine eigene Referenzdokumentation zu seiner Bibliothek gepflegt. Die Clients bieten auch Links, um Unterstützung aus der Entwicklercommunity für Clientbibliotheken zu erhalten. Das Azure Cache for Redis-Team ist weder Besitzer der Entwicklung von noch der Unterstützung für Clientbibliotheken.

Obwohl wir keine Clientbibliotheken besitzen oder unterstützen, empfehlen wir doch einige Bibliotheken. Empfehlungen basieren auf der Beliebtheit und ob es eine aktive Onlinecommunity gibt, um Ihre Fragen zu unterstützen und zu beantworten. Es wird nur empfohlen, die neueste verfügbare Version zu verwenden und regelmäßig zu aktualisieren, sobald neue Versionen verfügbar werden. Diese Bibliotheken befinden sich in der aktiven Entwicklung und geben häufig neue Versionen mit Verbesserungen der Zuverlässigkeit und Leistung frei.

Clientbibliothek Sprache GitHubRepository Dokumentation
StackExchange.Redis C#/.NET Link Weitere Informationen finden Sie hier.
Lettuce Java Link Weitere Informationen finden Sie hier.
Jedis Java Link
node_redis Node.js Link
Redisson Java Link Weitere Informationen finden Sie hier.
ioredis Node.js Link Weitere Informationen finden Sie hier.

Hinweis

Ihre Anwendung kann eine Verbindung mit Ihrer Azure Cache for Redis-Instanz herstellen und sie mit jeder Clientbibliothek verwenden, die auch mit Open-Source-Redis kommunizieren kann.

Spezifische Anleitungen für die Clientbibliothek

Informationen zu bewährten Methoden für clientbibliotheksspezifische Anleitungen finden Sie unter den folgenden Links:

Redisson (Java)

Wir empfehlen die Verwendung von redisson 3.14.1 oder höher. Ältere Versionen enthalten bekannte Probleme mit Verbindungsverlusten, die nach Failovern zu Problemen führen. Überwachen Sie das Redisson-Änderungsprotokoll auf andere bekannte Probleme, die sich auf Features auswirken können, die von Ihrer Anwendung verwendet werden. Weitere Informationen finden Sie unter CHANGELOG und in den Häufig gestellten Fragen (FAQ) zu Redisson.

Weitere Hinweise:

  • Redisson verwendet im Gegensatz zu einigen anderen Clients standardmäßig die Strategie „Aus Replikat lesen“. Um dies zu ändern, ändern Sie die Konfigurationseinstellung „readMode“.
  • Redisson verfügt über eine Strategie zum Bilden von Verbindungspools mit konfigurierbaren Mindest- und Höchsteinstellungen, wobei die Standardmindestwerte groß sind. Die großen Standardwerte können zu aggressivem Wiederherstellungsverhalten von Verbindungen bzw. sogenannten „Verbindungsstürmen“ beitragen. Um das Risiko zu verringern, sollten Sie erwägen, weniger Verbindungen zu verwenden, da Sie Befehle oder Befehlsbatches effizient über mehrere Verbindungen per Pipeline übertragen können.
  • Redisson verfügt über ein standardmäßiges Leerlauftimeout von 10 Sekunden, was dazu führt, dass Verbindungen häufiger geöffnet und geschlossen werden, als es ideal ist.

Im Folgenden finden Sie eine empfohlene Baselinekonfiguration für den Clustermodus, die Sie nach Bedarf ändern können:

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

Einen Artikel zur Verwendung der Redisson-Unterstützung für JCache als Speicher für den HTTP-Sitzungszustand in IBM Liberty in Azure finden Sie unter Verwenden von Java EE JCache mit Open Liberty oder WebSphere Liberty in einem AKS-Cluster (Azure Kubernetes Service).

Verwenden von Clientbibliotheken

Zusätzlich zur Referenzdokumentation gibt es mehrere Tutorials, die Ihnen den Einstieg in die Verwendung von Azure Cache for Redis mit verschiedenen Sprachen und Cacheclients erleichtern.

Weitere Informationen zur Verwendung einiger dieser Clientbibliotheken in Tutorials finden Sie in den folgenden Artikeln:

Nächste Schritte