Bibliothèques clientes
Azure Cache pour Redis est dérivé de Redis, un très populaire magasin de données en mémoire open source. Azure Cache pour Redis est accessible par un large éventail de clients Redis pour de nombreux langages de programmation. Chaque bibliothèque cliente dispose de sa propre API qui effectue des appels au serveur Redis à l’aide de commandes Redis, mais les bibliothèques clientes sont générées pour communiquer avec n’importe quel serveur Redis.
Chaque client gère sa propre documentation de référence pour sa bibliothèque. Les clients fournissent également des liens pour obtenir du support via la communauté des développeurs de bibliothèques clientes. L’équipe Azure Cache pour Redis ne dispose pas du développement ni de la prise en charge des bibliothèques clientes.
Bien que nous ne disposions ni ne prenons en charge les bibliothèques clientes, nous vous recommandons d’utiliser certaines bibliothèques. Les recommandations sont basées sur la popularité et la présence d’une communauté en ligne active capable de répondre à vos questions. Nous vous recommandons d’utiliser la dernière version disponible et de procéder régulièrement à une mise à niveau à mesure que de nouvelles versions sont mises à disposition. Ces bibliothèques sont en cours de développement actif et publient souvent de nouvelles versions avec des améliorations en termes de fiabilité et de performances.
Bibliothèque cliente | Langage | Référentiel GitHub | Documentation |
---|---|---|---|
StackExchange.Redis | C#/.NET | Lien | Plus d’informations ici |
Lettuce | Java | Lien | Plus d’informations ici |
Jedis | Java | Lien | |
node_redis | Node.js | Lien | |
Redisson | Java | Lien | Plus d’informations ici |
ioredis | Node.js | Lien | Plus d’informations ici |
Remarque
Votre application peut utiliser n’importe quelle bibliothèque client compatible avec Redis open source pour se connecter à votre instance Azure Cache pour Redis.
Conseils pour la bibliothèque cliente
Pour plus d’informations sur les meilleure pratiques relatives aux bibliothèques clientes, consultez les liens suivants :
- StackExchange.Redis (.NET)
- Java - Quel client dois-je utiliser ?
- Lettuce (Java)
- Jedis (Java)
- Redisson (Java)
- Node.JS
- PHP
- HiRedisCluster
- Fournisseur d’état de session ASP.NET
Redisson (Java)
Nous vous recommandons d’utiliser redisson 3.14.1 ou une version ultérieure. Les versions antérieures contiennent des problèmes de fuite de connexion connus qui provoquent des problèmes après les basculements. Surveillez le journal des modifications Redisson pour rechercher d’autres problèmes connus qui peuvent affecter les fonctionnalités utilisées par votre application. Pour plus d’informations, consultezCHANGELOG
les et la FAQ Redisson.
Autres remarques :
- Redisson utilise par défaut la stratégie « lecture à partir du réplica », contrairement à d’autres clients. Pour modifier ce paramètre, modifiez le paramètre de configuration « readMode ».
- Redisson a une stratégie de regroupement de connexions avec des paramètres de minimum et maximum configurables, et les valeurs minimales par défaut sont grandes. Les grandes valeurs par défaut peuvent contribuer à des comportements de reconnexion agressifs ou à des « tempêtes de connexions ». Pour réduire le risque, envisagez d’utiliser moins de connexions, car vous pouvez efficacement mettre en pipeline des commandes, ou des lots de commandes, sur quelques connexions.
- Redisson a un délai d’expiration de connexion inactive par défaut de 10 secondes, ce qui entraîne plus de fermetures et de réouvertures des connexions que l’idéal.
Voici une configuration de base recommandée pour le mode cluster que vous pouvez modifier en fonction des besoins :
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
Pour obtenir un article montrant comment utiliser la prise en charge de Redisson pour JCache en tant que magasin d’état de session HTTP dans IBM Liberty sur Azure, consultez Utiliser Java EE JCache avec Open Liberty ou WebSphere Liberty sur un cluster Azure Kubernetes Service (AKS).
Utiliser des bibliothèques clientes
En plus de la documentation de référence, vous pouvez suivre différents tutoriels montrant comment débuter avec Azure Cache pour Redis en utilisant différents langages et clients de cache.
Pour plus d’informations sur l’utilisation de certaines de ces bibliothèques clientes dans les tutoriels, consultez les articles suivants :
- Programmer une application .NET Framework
- Programmer une application .NET Core
- Programmer une application web ASP.NET
- Coder une application web ASP.NET Core
- Programmer une application Java
- Programmer une application Node.js
- Programmer une application Python