Compartilhar via


Bibliotecas de cliente

Importante

O Cache do Azure para Redis anunciou a linha do tempo de desativação para todos os SKUs. Recomendamos migrar suas instâncias do Cache do Azure para Redis para o Redis Gerenciado pelo Azure assim que possível.

Para obter mais detalhes sobre a aposentadoria:

O Cache do Azure para Redis baseia-se no armazenamento de dados de software livre e na memória do Redis. Os clientes Redis para muitas linguagens de programação podem acessar o Redis do Azure. Seu aplicativo pode usar qualquer biblioteca de cliente compatível com o Redis de software livre para se conectar ao cache redis do Azure.

Cada biblioteca de clientes tem sua própria API que chama servidores Redis usando comandos Redis. As bibliotecas de cliente são criadas para se comunicar com qualquer servidor Redis.

Os clientes mantêm a documentação de referência para suas próprias bibliotecas e fornecem links para obter suporte por meio da comunidade de desenvolvedores da biblioteca de clientes. A Microsoft e a equipe do Azure Redis não possuem o desenvolvimento nem o suporte para bibliotecas de clientes.

A Microsoft e o Azure Redis recomendam algumas bibliotecas, com base na popularidade e se há uma comunidade de suporte online ativa para responder a perguntas. Essas bibliotecas estão em desenvolvimento ativo e geralmente lançam novas versões com melhorias de confiabilidade e desempenho. A Microsoft recomenda usar a versão mais recente disponível e atualizar regularmente à medida que novas versões se tornam disponíveis.

A tabela a seguir lista links e documentação para algumas bibliotecas de clientes recomendadas.

Biblioteca de clientes Idioma Repositório GitHub Documentação
StackExchange.Redis C# / .NET https://github.com/StackExchange/StackExchange.Redis StackExchange.Redis
Jedis Java https://github.com/redis/jedis
Lettuce Java https://github.com/lettuce-io/ Lettuce – cliente Java Redis avançado
Redisson Java https://github.com/redisson/redisson Redisson – Redis Java client Real-Time Data Platform
ioredis Node.js https://github.com/luin/ioredis Classes
node_redis Node.js https://github.com/redis/node-redis

Observação

Seu aplicativo pode usar qualquer biblioteca de cliente compatível com o Redis de software livre para se conectar à instância do Azure Redis.

Diretrizes específicas para a biblioteca de clientes

Para obter diretrizes e práticas recomendadas específicas da biblioteca de clientes, consulte os seguintes links:

Como usar as bibliotecas de clientes

Além da documentação de referência, você pode usar os seguintes tutoriais para começar a usar o Azure Redis usando diferentes idiomas e clientes de cache:

Práticas recomendadas para Redisson (Java)

Aqui estão algumas práticas recomendadas para a biblioteca de clientes Redisson :

  • Use o Redisson 3.14.1 ou superior. As versões mais antigas contêm problemas conhecidos de vazamento de conexão que causam problemas após failovers.

  • Monitore o log de mudanças do Redisson para identificar problemas conhecidos que podem afetar recursos usados pelo seu aplicativo. Para obter mais informações, consulte o Histórico de Versões Redisson e as Perguntas Frequentes sobre Redisson.

  • Modifique a configuração readMode se não quiser usar a estratégia leitura a partir da réplica. Diferente de alguns outros clientes, o Redisson usa a leitura a partir da réplica como padrão.

  • Para reduzir o risco de comportamentos agressivos de reconexão ou tempestades de conexão, considere definir um número menor de conexões mínimas.

    O Redisson tem uma estratégia de pool de conexões com configurações mínimas e máximas configuráveis e os valores mínimos padrão são grandes. Os valores padrão elevados podem contribuir para comportamentos agressivos de reconexão ou tempestades de conexão. Para reduzir esse risco, considere o uso de menos conexões. Você pode canalizar comandos ou lotes de comandos de forma eficiente por meio de algumas conexões.

  • Redefina o tempo limite de conexão ocioso, se necessário. O Redisson tem um tempo limite de conexão ocioso padrão de 10 segundos, o que pode levar a mais fechamento e reabertura de conexões do que o ideal.

  • Para obter informações sobre como usar o Redisson com Java EE JCache para armazenar o estado da sessão HTTP em um cluster do AKS (Serviço de Kubernetes do Azure), consulte Como usar o Azure Redis como cache de sessão para WebSphere Liberty ou Open Liberty.

  • Use a seguinte configuração de linha de base recomendada para o modo de cluster e modifique-a conforme necessário.

    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