Udostępnij za pośrednictwem


Biblioteki klienta usługi Azure Managed Redis (wersja zapoznawcza)

Usługa Azure Managed Redis (wersja zapoznawcza) jest oparta na popularnym magazynie danych w pamięci, Redis. Klienci redis dla wielu języków programowania mogą uzyskiwać dostęp do usługi Azure Managed Redis. Każda biblioteka klienta ma własny interfejs API, który wykonuje wywołania serwera Redis przy użyciu poleceń usługi Redis, ale biblioteki klienckie są tworzone w celu komunikacji z dowolnym serwerem Redis.

Każda biblioteka klienta przechowuje własną dokumentację referencyjną. Biblioteki zawierają również łącza umożliwiające uzyskanie pomocy technicznej za pośrednictwem społeczności deweloperów bibliotek klienta. Zespół usługi Azure Managed Redis nie zajmuje się rozwojem żadnych bibliotek klienta ani nie świadczy pomocy technicznej w ich zakresie.

Poniższe zalecenia są oparte na popularności i czy istnieje aktywna społeczność online do obsługi i odpowiadania na pytania. Zalecamy tylko korzystanie z najnowszej dostępnej wersji i regularne uaktualnianie w miarę dostępności nowych wersji. Biblioteki te są na bieżąco opracowywane i często udostępniają nowe wersje z ulepszeniami niezawodności i wydajności.

Biblioteka kliencka Język RepozytoriumGitHub Dokumentacja
StackExchange.Redis C#/.NET Link Więcej informacji
Lettuce Java Link Więcej informacji
Jedis Java Link
node_redis Node.js Link
Redisson Java Link Więcej informacji
ioredis Node.js Link Więcej informacji

Uwaga

Aplikacja może używać dowolnej biblioteki klienta zgodnej z usługą Redis typu open source w celu nawiązania połączenia z wystąpieniem usługi Azure Managed Redis.

Wybieranie odpowiedniej biblioteki klienta na podstawie zasad klastrowania

Usługa Azure Managed Redis obsługuje zasady klastrowania przedsiębiorstwa i zasady klastrowania oprogramowania open source. Dowiedz się więcej tutaj (dodaj łącze do informacji o zasadach klastrowania).

Wszystkie biblioteki klienta współpracują z wystąpieniem usługi Redis z zasadami klastrowania przedsiębiorstwa. Jeśli jednak używasz zasad klastrowania systemu operacyjnego, upewnij się, że wybrana biblioteka klienta obsługuje nawiązywanie połączenia z klastrowanych wystąpień usługi Redis.

Zablokowane polecenia

Firma Microsoft zarządza konfiguracją i zarządzaniem wystąpieniami usługi Azure Managed Redis, które domyślnie wyłącza następujące polecenia. Aby uzyskać więcej informacji na temat zablokowanych poleceń, zobacz Zgodność poleceń zarządzania klastrem

Polecenia wieloklawiszowe

Ponieważ wystąpienia usługi AMR używają konfiguracji klastrowanej, mogą być widoczne wyjątki CROSSSLOT w poleceniach, które działają na wielu klawiszach. Zachowanie różni się w zależności od używanych zasad klastrowania. Jeśli używasz zasad klastrowania systemu operacyjnego, polecenia wieloklawiszowe wymagają mapowania wszystkich klawiszy do tego samego gniazda.

Mogą również występować błędy CROSSSLOT związane z zasadami klastrowania przedsiębiorstwa. Tylko następujące polecenia wieloklawiszowe są dozwolone w różnych miejscach z klastrowaniem przedsiębiorstwa: DEL, MSET, MGET, EXISTS, UNLINK i TOUCH.

W bazach danych aktywny-aktywny polecenia zapisu z wieloma klawiszami (DEL, MSET, UNLINK) mogą być uruchamiane tylko na klawiszach, które znajdują się w tym samym gnieździe. Jednak następujące polecenia wieloklawiszowe są dozwolone w różnych miejscach w bazach danych aktywny-aktywny: MGET, EXISTSi TOUCH. Aby uzyskać więcej informacji, zobacz Klastrowanie baz danych.

Polecenia zablokowane dla zasad klastrowania przedsiębiorstwa

  • INFORMACJE DOTYCZĄCE KLASTRÓW
  • POMOC DOTYCZĄCA KLASTRÓW
  • GNIAZDO KLAWISZA KLASTRA
  • WĘZŁY KLASTRA
  • GNIAZDA KLASTRA

Polecenia zablokowane dla aktywnej replikacji geograficznej

  • FLUSHALL
  • FLUSHDB

Wskazówki dotyczące bibliotek klienta

Aby uzyskać informacje na temat najlepszych rozwiązań dotyczących biblioteki klienta, patrz następujące łącza:

Redisson (Java)

Zalecamy użycie narzędzia redisson 3.14.1 lub nowszego. Starsze wersje zawierają znane problemy z wyciekiem połączeń, które powodują problemy po przejściu w tryb failover. Monitoruj dziennik zmian Redisson pod kątem innych znanych problemów, które mogą mieć wpływ na funkcje używane przez aplikację. Aby uzyskać więcej informacji, zobacz CHANGELOG oraz Często zadawane pytania dotyczące Redisson.

Inne uwagi:

  • Redisson domyślnie określa strategię „odczytu z repliki”, w przeciwieństwie do niektórych innych klientów. Aby zmienić to ustawienie domyślne, zmodyfikuj ustawienie konfiguracji "readMode".
  • Redisson ma strategię buforowania połączeń z konfigurowalnymi ustawieniami minimalnymi i maksymalnymi, a domyślne wartości minimalne są duże. Duże wartości domyślne mogą przyczynić się do agresywnych zachowań ponownego nawiązywania połączenia lub "burzy połączeń". Aby zmniejszyć ryzyko, rozważ użycie mniejszej liczby połączeń, ponieważ można efektywnie potokować polecenia lub partie poleceń za pośrednictwem kilku połączeń.
  • Redisson ma domyślny limit czasu bezczynności połączenia 10 sekund, co prowadzi do większego zamknięcia i ponownego otwarcia połączeń niż idealne.

Poniżej przedstawiono zalecaną konfigurację punktu odniesienia dla trybu klastra, który można zmodyfikować w razie potrzeby:

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

Aby uzyskać artykuł na temat obsługi usługi JCache redisson jako magazynu stanu sesji HTTP w środowisku IBM Liberty na platformie Azure, zobacz Używanie usługi Java EE JCache z funkcją Open Liberty lub WebSphere Liberty w klastrze usługi Azure Kubernetes Service (AKS).

Jak używać bibliotek klienta

Oprócz dokumentacji referencyjnej można znaleźć samouczki przedstawiające wprowadzenie do pracy z usługą Azure Managed Redis przy użyciu różnych języków i klientów pamięci podręcznej.

Aby uzyskać więcej informacji na temat używania niektórych z tych bibliotek klienckich w samouczkach, zobacz następujące artykuły:

Następne kroki