|
| 1 | +--- |
| 2 | +title: Best practices using client libraries |
| 3 | +titleSuffix: Azure Cache for Redis |
| 4 | +description: Learn about client libraries for Azure Cache for Redis. |
| 5 | +author: flang-msft |
| 6 | +ms.service: cache |
| 7 | +ms.topic: conceptual |
| 8 | +ms.date: 07/07/2022 |
| 9 | +ms.author: franlanglois |
| 10 | + |
| 11 | +--- |
| 12 | + |
| 13 | +# Client libraries |
| 14 | + |
| 15 | +Azure Cache for Redis is based on the popular open-source in-memory data store, open-source Redis. Azure Cache for Redis can be accessed by a wide variety of Redis clients for many programming languages. Each client library has its own API that makes calls to Redis server using Redis commands, but the client libraries are built to talk to any Redis server. |
| 16 | + |
| 17 | +Each client maintains its own reference documentation for its library. The clients also provide links to get support through the client library developer community. The Azure Cache for Redis team doesn't own the development, or the support for any client libraries. |
| 18 | + |
| 19 | +Although we don't own or support any client libraries, we do recommend some libraries. Recommendations are based on popularity and whether there's an active online community to support and answer your questions. We only recommend using the latest available version, and upgrading regularly as new versions become available. These libraries are under active development and often release new versions with improvements to reliability and performance. |
| 20 | + |
| 21 | +| **Client library** | **Language** | **GitHub** **repo** | **Documentation**| |
| 22 | +| --------------------|------------- |-------------------------------------------------------| --------------------------| |
| 23 | +| StackExchange.Redis | C#/.NET | [Link](https://github.com/StackExchange/StackExchange.Redis)| [More information here](https://stackexchange.github.io/StackExchange.Redis/) | |
| 24 | +| Lettuce | Java | [Link](https://github.com/lettuce-io/) | [More information here](https://lettuce.io/) | |
| 25 | +| Jedis | Java | [Link](https://github.com/redis/jedis) | | |
| 26 | +| node_redis | Node.js | [Link](https://github.com/redis/node-redis) | | |
| 27 | +| Redisson | Java | [Link](https://github.com/redisson/redisson) | [More information here](https://redisson.org/) | |
| 28 | +| ioredis | Node.js | [Link](https://github.com/luin/ioredis) | [More information here](https://ioredis.readthedocs.io/en/stable/API/) | |
| 29 | + |
| 30 | +> [!NOTE] |
| 31 | +> Your application can to connect and use your Azure Cache for Redis instance with any client library that can also communicate with open-source Redis. |
| 32 | +
|
| 33 | +## Client library-specific guidance |
| 34 | + |
| 35 | +For information on client library-specific guidance best practices, see the following links: |
| 36 | + |
| 37 | +- [StackExchange.Redis (.NET)](cache-best-practices-connection.md#using-forcereconnect-with-stackexchangeredis) |
| 38 | +- [Java - Which client should I use?](https://gist.github.com/warrenzhu25/1beb02a09b6afd41dff2c27c53918ce7#file-azure-redis-java-best-practices-md) |
| 39 | +- [Lettuce (Java)](https://github.com/Azure/AzureCacheForRedis/blob/main/Lettuce%20Best%20Practices.md) |
| 40 | +- [Jedis (Java)](https://gist.github.com/JonCole/925630df72be1351b21440625ff2671f#file-redis-bestpractices-java-jedis-md) |
| 41 | +- [Node.js](https://gist.github.com/JonCole/925630df72be1351b21440625ff2671f#file-redis-bestpractices-node-js-md) |
| 42 | +- [PHP](https://gist.github.com/JonCole/925630df72be1351b21440625ff2671f#file-redis-bestpractices-php-md) |
| 43 | +- [HiRedisCluster](https://github.com/Azure/AzureCacheForRedis/blob/main/HiRedisCluster%20Best%20Practices.md) |
| 44 | +- [ASP.NET Session State Provider](https://gist.github.com/JonCole/925630df72be1351b21440625ff2671f#file-redis-bestpractices-session-state-provider-md) |
| 45 | + |
| 46 | +## How to use client libraries |
| 47 | + |
| 48 | +Besides the reference documentation, you can find tutorials showing how to get started with Azure Cache for Redis using different languages and cache clients. |
| 49 | + |
| 50 | +For more information on using some of these client libraries in tutorials, see the following articles: |
| 51 | + |
| 52 | +- [Code a .NET Framework app](cache-dotnet-how-to-use-azure-redis-cache.md) |
| 53 | +- [Code a .NET Core app](cache-dotnet-core-quickstart.md) |
| 54 | +- [Code an ASP.NET web app](cache-web-app-howto.md) |
| 55 | +- [Code an ASP.NET Core web app](cache-web-app-aspnet-core-howto.md) |
| 56 | +- [Code a Java app](cache-java-get-started.md) |
| 57 | +- [Code a Node.js app](cache-nodejs-get-started.md) |
| 58 | +- [Code a Python app](cache-python-get-started.md) |
| 59 | + |
| 60 | +## Next steps |
| 61 | + |
| 62 | +- [Azure Cache for Redis development FAQs](cache-development-faq.yml) |
| 63 | +- [Best practices for development](cache-best-practices-development.md) |
0 commit comments