Condividi tramite


Librerie client

Importante

Cache di Azure per Redis ha annunciato la sequenza temporale di ritiro per tutti gli SKU. È consigliabile spostare le istanze di Cache Redis di Azure esistenti in Azure Managed Redis non appena è possibile.

Per altre informazioni sul ritiro:

Cache Redis di Azure si basa sull'archivio dati open source e in memoria di Redis. I client Redis per molti linguaggi di programmazione possono accedere ad Azure Redis. L'applicazione può usare qualsiasi libreria client compatibile con Redis open source per connettersi alla cache Redis di Azure.

Ogni libreria client ha una propria API che chiama i server Redis usando i comandi Redis. Le librerie client vengono compilate per comunicare con qualsiasi server Redis.

I client mantengono la documentazione di riferimento per le proprie librerie e forniscono collegamenti per ottenere supporto tramite la community per sviluppatori di librerie client. Microsoft e il team di Azure Redis non possiedono lo sviluppo o il supporto per le librerie client.

Microsoft e Azure Redis consigliano alcune librerie, in base alla popolarità e alla presenza di una community di supporto online attiva per rispondere alle domande. Queste librerie sono in fase di sviluppo attivo e spesso rilasciano nuove versioni con miglioramenti dell'affidabilità e delle prestazioni. Microsoft consiglia di usare la versione più recente disponibile e di eseguire regolarmente l'aggiornamento man mano che diventano disponibili nuove versioni.

Nella tabella seguente sono elencati i collegamenti e la documentazione per alcune librerie client consigliate.

Libreria client Lingua Repository GitHub Documentazione
StackExchange.Redis C#/.NET https://github.com/StackExchange/StackExchange.Redis StackExchange.Redis
Jedis Giava https://github.com/redis/jedis
Lattuga Giava https://github.com/lettuce-io/ Lettuce - Client Java Redis avanzato
Redisson Giava https://github.com/redisson/redisson Redisson - Redis Java client Real-Time Data Platform
ioredis Node.js https://github.com/luin/ioredis Classi
node_redis Node.js https://github.com/redis/node-redis

Note

L'applicazione può usare qualsiasi libreria client compatibile con Redis open source per connettersi all'istanza di Azure Redis.

Indicazioni specifiche della libreria client

Per indicazioni e procedure consigliate specifiche per la libreria client, vedere i collegamenti seguenti:

Come usare le librerie client

Oltre alla documentazione di riferimento, è possibile usare le esercitazioni seguenti per iniziare a usare Azure Redis usando diversi linguaggi e client della cache:

Procedure consigliate per Redisson (Java)

Ecco alcune procedure consigliate per la libreria client redisson :

  • Usare Redisson 3.14.1 o versione successiva. Le versioni precedenti contengono problemi noti di perdita di connessione che causano problemi dopo i failover.

  • Monitorare il log delle modifiche di Redisson per individuare i problemi noti che possono influire sulle funzionalità usate dall'applicazione. Per altre informazioni, vedere la cronologia delle versioni di Redisson e le domande frequenti su Redisson.

  • Modificare l'impostazione di configurazione readMode se si preferisce non utilizzare la strategia di lettura dalla replica. A differenza di altri client, Redisson usa la lettura dalla replica come impostazione predefinita.

  • Per ridurre il rischio di comportamenti aggressivi di riconnessione o tempeste di connessione, è consigliabile impostare un minor numero di connessioni minime.

    Redisson ha una strategia di pool di connessioni con impostazioni minime e massime configurabili e i valori minimi predefiniti sono di grandi dimensioni. Impostazioni predefinite di grandi dimensioni possono contribuire a comportamenti aggressivi di riconnessione o tempeste di connessione. Per ridurre questo rischio, prendere in considerazione l'uso di un minor numero di connessioni. È possibile canalizzare in modo efficiente comandi o batch di comandi tramite alcune connessioni.

  • Reimpostare il timeout di connessione inattiva, se necessario. Redisson ha un timeout di connessione inattiva predefinito di 10 secondi, che può causare una chiusura e una riapertura delle connessioni più che ideali.

  • Per informazioni sull'uso di Redisson con Java EE JCache per archiviare lo stato della sessione HTTP in un cluster del servizio Azure Kubernetes, vedere Uso di Azure Redis come cache di sessione per WebSphere Liberty o Open Liberty.

  • Usare la configurazione di base consigliata seguente per la modalità cluster e modificarla in base alle esigenze.

    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