Клиентские библиотеки
Кэш Azure для Redis основан на популярном продукте с открытым кодом — выполняющемся в памяти хранилище данных, Redis с открытым кодом. Клиенты Redis для многих языков программирования могут получить доступ к Управляемому Redis Azure. Каждая клиентская библиотека имеет собственный API, который вызывает сервер Redis с помощью команд Redis, но клиентские библиотеки создаются для взаимодействия с любым сервером Redis.
У каждого клиента собственная справочная документация для его библиотеки. Клиенты также предоставляют ссылки для получения поддержки через сообщество разработчиков клиентской библиотеки. Команда Кэш Azure для Redis не владеет разработкой и не осуществляет поддержку каких-либо клиентских библиотек.
Несмотря на то, что мы не имеем и не поддерживаем какие-либо клиентские библиотеки, мы рекомендуем некоторые из них. Рекомендации основаны на популярности и наличии активного онлайн-сообщества для поддержки и ответа на ваши вопросы. Мы рекомендуем использовать последнюю доступную версию и регулярно проводить обновления по мере того, как новые версии становятся доступными. Эти библиотеки находятся в активной разработке, и часто выпускаются новые версии с улучшениями в области надежности и производительности.
Клиентская библиотека | Язык | РепозиторийGitHub | Документация |
---|---|---|---|
StackExchange.Redis | C#/.NET | Ссылка | См. подробнее здесь |
Lettuce | Java | Ссылка | См. подробнее здесь |
Jedis | Java | Ссылка | |
node_redis | Node.js | Ссылка | |
Redisson | Java | Ссылка | См. подробнее здесь |
ioredis. | Node.js | Ссылка | См. подробнее здесь |
Примечание.
Приложение может использовать любую клиентную библиотеку, совместимую с Redis с открытым кодом, для подключения к Кэш Azure для Redis экземпляру.
Особые рекомендации для клиентских библиотек
Дополнительные сведения о рекомендациях для конкретной клиентской библиотеки см. по следующим ссылкам:
- StackExchange.Redis (.NET)
- Lettuce (Java)
- Jedis (Java)
- Redisson (Java)
- Node.js
- PHP
- HiRedisCluster
- Поставщик состояний сеансов ASP.NET
Redisson (Java)
Рекомендуется использовать версию Redisson 3.14.1 или более позднюю. В более старых версиях имеются выявленные проблемы с утечкой подключения, которые вызывают ошибки после восстановления после отказа. Отслеживайте журнал изменений Redisson, чтобы оперативно узнавать о других известных проблемах, которые могут повлиять на функции, используемые вашим приложением. Дополнительные сведения см. в статьеCHANGELOG
и на странице Часто задаваемые вопросы о Redisson.
Другие примечания.
- В 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
Сведения о поддержке Redisson JCache в качестве хранилища состояния сеанса HTTP в IBM Liberty в Azure см. в статье Об использовании Java EE JCache с Open Liberty или WebSphere Liberty в кластере Служба Azure Kubernetes (AKS).
Использование клиентских библиотек
Помимо справочной документации можно найти учебники, показывающие, как приступить к работе с Кэшем Azure для Redis, используя разные языки и клиенты кэша.
Дополнительные сведения учебных пособий об использовании некоторых из этих клиентских библиотек см. в следующих статьях:
- Создание приложения .NET Framework
- Создание приложения .NET Core
- Создание веб-приложения ASP.NET
- Создание веб-приложения ASP.NET Core
- Создание приложения Java
- Создание приложения Node.js
- Создание приложения Python