Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Klient C#/.NET dla Redis

Klient C# Redis firmy ServiceStack to prosty, wydajny i bogaty w funkcje klient C# dla Redis z natywną obsługą i abstrakcjami wysokiego poziomu do serializacji POCO i typów złożonych.

Istnieje wiele różnych interfejsów API dostępnych z RedisClient implementacja następujących interfejsów:

  • Dostawca pamięci podręcznej — jeśli używasz Redis wyłącznie jako pamięci podręcznej, powinieneś powiązać ze wspólnym interfejsem ServiceStack, ponieważ w ServiceStack są już dostępne implementacje In-Memory i Memcached, co pozwala na łatwą zmianę dostawców
  • IRedisNativeClient / Async — dla tych, którzy chcą mieć dostęp do surowych bajtów niskiego poziomu (gdzie można kontrolować własną serializację/deserializację), które mapują 1:1 z operacjami Redis o tej samej nazwie.

W większości przypadków, jeśli potrzebujesz dostępu do konkretnych funkcji Redis, chcesz powiązać je z poniższym interfejsem:

  • IRedisClient / Async — zapewnia bardziej przyjazny, bardziej opisowy interfejs API, który umożliwia przechowywanie wartości w postaci ciągów (kodowanie UTF8).
  • Redis ogólne interfejsy API klienta — utworzone za pomocą redis.As<T>() - zwraca "klienta o silnym typie", który zapewnia typowy interfejs dla wszystkich operacji na wartościach redis, które działają z dowolnym typem C#/.NET POCO.

Interfejsy działają czysto z dowolnym IOC i umożliwiają powiązanie logiki aplikacji z interfejsami bez implementacji, które można łatwo wyszydzić i zastąpić.

Przegląd hierarchii klas dla klientów C# Redis wygląda następująco:

RedisTypedClient (POCO) > RedisClient (string) > RedisNativeClient (raw byte[])

Każdy klient zapewnia różne warstwy abstrakcji:

  • RedisNativeClient udostępnia nieprzetworzony byte[] apis i nie organizuje i przekazuje wszystkie wartości bezpośrednio do redis.
  • RedisClient zakłada string wartości i po prostu konwertuje ciągi na bajty UTF8 przed wysłaniem do Redis
  • RedisTypedClient zapewnia ogólny interfejs umożliwiający dodawanie wartości POCO. POCO są serializowane przy użyciu ServiceStack.Text, który jest następnie konwertowany do bajtów UTF8 i wysyłany do Redis.

Przegląd API #


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Przechowywanie kluczy z prefiksem, które wygasają w redis

  2. Błąd pola w obiekcie „target” w polu „”:wartość odrzucona []; kody [typeMismatch.target.,typeMismatch.,typeMismatch.java.util.Date,typeMismatch]

  3. redis-py :Jaka jest różnica między StrictRedis() i Redis()?

  4. Skrócenie UUID

  5. Jak skonfigurować seler-redis w projekcie django na microsoft azure?