Sdílet prostřednictvím


Klientské knihovny Azure Managed Redis (Preview)

Azure Managed Redis (Preview) je založený na oblíbeném úložišti dat v paměti Redis. Ke službě Azure Managed Redis má přístup široká škála klientů Redis pro mnoho programovacích jazyků. Každá klientská knihovna má vlastní rozhraní API, které volá server Redis pomocí příkazů Redis, ale klientské knihovny jsou vytvořené tak, aby komunikily s libovolným serverem Redis.

Každá klientská knihovna udržuje vlastní referenční dokumentaci. Knihovny také poskytují odkazy na získání podpory prostřednictvím komunity vývojářů klientské knihovny. Tým Azure Managed Redis nevlastní vývoj ani podporu pro žádné klientské knihovny.

Níže uvedená doporučení jsou založená na oblíbenosti a na tom, jestli je aktivní online komunita, která podporuje a odpovídá na vaše otázky. Doporučujeme používat jenom nejnovější dostupnou verzi a pravidelně upgradovat, jakmile budou k dispozici nové verze. Tyto knihovny se aktivně vyvíjí a často vydávají nové verze s vylepšeními spolehlivosti a výkonu.

Klientská knihovna Jazyk Úložiště GitHub Dokumentace
StackExchange.Redis C#/.NET Odkaz Další informace najdete tady.
Lettuce Java Odkaz Další informace najdete tady.
Jedis Java Odkaz
node_redis Node.js Odkaz
Redisson Java Odkaz Další informace najdete tady.
ioredis Node.js Odkaz Další informace najdete tady.

Poznámka:

Vaše aplikace může pro připojení k instanci Azure Managed Redis použít libovolnou klientskou knihovnu, která je kompatibilní s open source Redis.

Výběr správné klientské knihovny na základě zásad clusteringu

Azure Managed Redis podporuje zásady clusteringu Enterprise a zásady clusteringu operačního systému. Další informace najdete tady (přidejte odkaz na informace o zásadách clusteringu). Všechny klientské knihovny pracují s vaší instancí Redis se zásadami clusteringu Enterprise. Pokud ale používáte zásady clusteringu operačního systému, ujistěte se, že klientská knihovna, kterou zvolíte, podporuje připojení ke clusterovaným instancím Redis.

Blokované příkazy

Konfigurace a správa instancí Azure Managed Redis spravuje Microsoft, což ve výchozím nastavení zakáže následující příkazy. Další informace o blokovaných příkazech najdete v tématu Kompatibilita příkazů správy clusteru.

Příkazy s více klíči

Vzhledem k tomu, že instance AMR používají clusterovanou konfiguraci, můžou se zobrazit CROSSSLOT výjimky u příkazů, které pracují s více klíči. Chování se liší v závislosti na použitých zásadách clusteringu. Pokud používáte zásady clusteringu operačního systému, příkazy s více klíči vyžadují, aby se všechny klíče mapovaly na stejný slot hash.

U zásad podnikového clusteringu se také můžou zobrazit CROSSSLOT chyby. Mezi sloty s clusteringem Enterprise jsou povoleny pouze následující příkazy s více klíči: DEL, MSET, MGET, EXISTS, UNLINKa TOUCH.

V databázích Active-Active lze příkazy pro zápis s více klíči (DEL, MSET, UNLINK) spouštět pouze na klíčích, které jsou ve stejném slotu. Následující příkazy s více klíči jsou však povoleny napříč sloty v databázích Active-Active: MGET, EXISTSa TOUCH. Další informace naleznete v tématu Clustering databáze.

Příkazy blokované pro zásady clusteringu Enterprise

  • INFORMACE O CLUSTERU
  • NÁPOVĚDA KE CLUSTERU
  • CLUSTER KEYSLOT
  • UZLY CLUSTERU
  • SLOTY CLUSTERU

Příkazy blokované pro aktivní geografickou replikaci

  • FLUSHALL
  • FLUSHDB

Doprovodné materiály specifické pro klientskou knihovnu

Informace o osvědčených postupech specifických pro klientskou knihovnu najdete na následujících odkazech:

Redisson (Java)

Doporučujeme použít redisson 3.14.1 nebo vyšší. Starší verze obsahují známé problémy s únikem připojení, které způsobují problémy po převzetí služeb při selhání. Sledujte protokol změn Redisson pro další známé problémy, které můžou ovlivnit funkce používané vaší aplikací. Další informace najdeteCHANGELOG v nejčastějších dotazech společnosti Redisson.

Další poznámky:

  • Redisson ve výchozím nastavení na rozdíl od jiných klientů nastaví strategii čtení z repliky. Chcete-li toto nastavení změnit, upravte nastavení konfigurace readMode.
  • Redisson má strategii sdružování připojení s konfigurovatelným minimálním a maximálním nastavením a výchozí minimální hodnoty jsou velké. Velké výchozí hodnoty můžou přispět k agresivnímu chování opětovného připojení nebo "bouře připojení". Pokud chcete riziko snížit, zvažte použití méně připojení, protože můžete efektivně provádět příkazy kanálu nebo dávky příkazů přes několik připojení.
  • Redisson má výchozí časový limit nečinného připojení 10 sekund, což vede k většímu zavření a opětovnému otevření připojení, než je ideální.

Tady je doporučená základní konfigurace pro režim clusteru, kterou můžete podle potřeby upravit:

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:10000"
  scanInterval: 1000
  pingConnectionInterval: 60000
  keepAlive: false
  tcpNoDelay: true

Článek, který ukazuje, jak používat podporu JCache pro JCache jako úložiště pro stav relace HTTP v IBM Liberty v Azure, najdete v tématu Použití Java EE JCache s Open Liberty nebo WebSphere Liberty v clusteru Azure Kubernetes Service (AKS).

Jak používat klientské knihovny

Kromě referenční dokumentace najdete kurzy, které ukazují, jak začít se službou Azure Managed Redis používat různé jazyky a klienty mezipaměti.

Další informace o používání některých z těchto klientských knihoven najdete v následujících článcích:

Další kroky