Sdílet prostřednictvím


Klientské knihovny Azure Managed Redis (Preview)

Služba Azure Managed Redis (Preview) je založená na oblíbeném úložišti dat v paměti Redis. Klienti Redis pro mnoho programovacích jazyků mají přístup ke službě Azure Managed Redis. 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ásledující doporučení jsou založená na popularitě 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 se vydávají nové verze s vylepšeními spolehlivosti a výkonu.

Klientská knihovna Jazyk Úložiště GitHubu 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 podnikové zásady clusteringu a zásady clusteringu operačního systému. Další informace najdete zde (přidejte odkaz na informace o zásadách clusteringu).

Všechny klientské knihovny pracují s vaší instancí Redis s podnikovými zásadami clusteringu. 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

Microsoft spravuje konfiguraci a správu instancí Azure Managed Redis, což ve výchozím nastavení zakáže následující příkazy. Další informace o blokovaných příkazech naleznete 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 výjimky CROSSSLOT 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 podnikových zásad clusteringu se také můžou zobrazit chyby CROSSSLOT. Mezi sloty s podnikovým clusteringem jsou povoleny pouze následující příkazy s více klíči: DEL, MSET, MGET, EXISTS, UNLINK a TOUCH.

V databázích aktivní-aktivní 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 aktivní-aktivní: MGET, EXISTS a TOUCH. Další informace získáte v tématu Clustering databáze.

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

  • CLUSTER INFO
  • CLUSTER HELP
  • CLUSTER KEYSLOT
  • CLUSTER NODES
  • CLUSTER SLOTS

Příkazy blokované pro aktivní geografickou replikaci

  • FLUSHALL
  • FLUSHDB

Doprovodné materiály ke konkrétním klientským knihovnám

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 verzi redisson 3.14.1 nebo vyšší. Starší verze obsahují známé problémy s nevrácením připojení, které způsobují problémy po převzetí služeb při selhání. Sledujte protokol změn Redisson, kde se mohou objevit další známé problémy, které mohou ovlivnit funkce používané vaší aplikací. Další informace naleznete v tématu CHANGELOG a častých otázkách k 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 výchozí 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činnosti 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 o podpoře JCache pro JCache jako úložišti stavu 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 máte k dispozici 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