Biblioteki klienta
Usługa Azure Cache for Redis jest oparta na popularnym magazynie danych typu open source w pamięci, redis typu open source. Dostęp do usługi Azure Cache for Redis można uzyskać za pomocą wielu różnych klientów usługi Redis w wielu językach programowania. 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żdy klient przechowuje własną dokumentację referencyjną dla swojej biblioteki. Klienci udostępniają również linki umożliwiające uzyskanie pomocy technicznej za pośrednictwem społeczności deweloperów biblioteki klienta. Zespół usługi Azure Cache for Redis nie jest właścicielem programowania ani obsługi żadnych bibliotek klienckich.
Mimo że nie jesteśmy właścicielami ani nie obsługujemy żadnych bibliotek klienckich, zalecamy niektóre biblioteki. Rekomendacje są oparte na popularności i tym, 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. Te biblioteki są aktywnie opracowywane i często udostępniają nowe wersje z ulepszeniami niezawodności i wydajności.
Biblioteka klienta | Język | Repozytorium GitHub | Dokumentacja |
---|---|---|---|
StackExchange.Redis | C#/.NET | Link | Więcej informacji znajduje się tutaj |
Lettuce | Java | Link | Więcej informacji znajduje się tutaj |
Jedis | Java | Link | |
node_redis | Node.js | Link | |
Redisson | Java | Link | Więcej informacji znajduje się tutaj |
ioredis | Node.js | Link | Więcej informacji znajduje się tutaj |
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 Cache for Redis.
Wskazówki dotyczące biblioteki klienta
Aby uzyskać informacje na temat najlepszych rozwiązań dotyczących biblioteki klienta, zobacz następujące linki:
- StackExchange.Redis (.NET)
- Java — którego klienta należy używać?
- Sałata (Java)
- Jedis (Java)
- Redisson (Java)
- Node.js
- PHP
- HiRedisCluster
- dostawca stanu sesji ASP.NET
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, zobaczCHANGELOG
i Redisson FAQ (Redisson — często zadawane pytania).
Inne uwagi:
- Redisson domyślnie określa strategię "odczytu z repliki", w przeciwieństwie do niektórych innych klientów. Aby to zmienić, 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 łą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:6380"
scanInterval: 1000
pingConnectionInterval: 60000
keepAlive: false
tcpNoDelay: true
Aby zapoznać się z artykułem pokazującym, jak używać obsługi usługi JCache redisson jako magazynu stanu sesji HTTP na platformie 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 klienckich
Oprócz dokumentacji referencyjnej można znaleźć samouczki przedstawiające sposób rozpoczynania pracy z usługą Azure Cache for 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:
- Kodacja aplikacji .NET Framework
- Kodacja aplikacji .NET Core
- Kodacja aplikacji internetowej ASP.NET
- Kodacja aplikacji internetowej ASP.NET Core
- Tworzenie kodu aplikacji Java
- Kodacja aplikacji Node.js
- Tworzenie kodu aplikacji w języku Python