Udostępnij za pośrednictwem


Omówienie buforowania usługi Stack Exchange Redis®*

W przypadku .NET.NET Aspireistnieje kilka sposobów wykorzystania buforowania w aplikacjach. Jedną z popularnych opcji jest użycie Stack Exchange Redis, który jest magazynem danych o wysokiej wydajności, który może służyć do przechowywania często używanych danych. Ten artykuł zawiera omówienie buforowania usługi Stack Exchange Redis i linki do zasobów, które ułatwiają korzystanie z nich w aplikacjach.

Aby użyć wielu integracji buforowania Redis w aplikacji, zobacz Samouczek: implementowanie buforowania przy użyciu integracji .NET.NET Aspire. Jeśli interesuje Cię korzystanie z usługi Redis Cache dla Azure, zobacz samouczek : wdrażanie projektu .NET Aspire z pamięcią podręczną Redis do Azure.

Protokół serializacji Redis (RESP)

Protokół serializacji Redis (RESP) jest protokołem bezpiecznym dla danych binarnych, który Redis używa do komunikowania się z klientami. RESP to prosty protokół oparty na tekście, który jest łatwy do zaimplementowania i wydajnego analizowania. ReSP służy do wysyłania poleceń do Redis i odbierania odpowiedzi z Redis. Usługa RESP została zaprojektowana tak, aby była szybka i wydajna, dzięki czemu doskonale nadaje się do użycia w aplikacjach o wysokiej wydajności. Aby uzyskać więcej informacji, zobacz specyfikację protokołu serializacji Redis.

Oprócz samego Redis istnieją dwie dobrze utrzymane implementacje programu RESP dla .NET:

  • Garnet: Garnet to zdalny magazyn pamięci podręcznej od Microsoft Research, zapewniający wysoką wydajność (przepustowość i opóźnienia), skalowalność, przechowywanie, odzyskiwanie danych, fragmentację klastra, migrację kluczy i funkcje replikacji. Firma Garnet może współpracować z istniejącymi klientami Redis.
  • Valkey: elastyczny rozproszony magazyn danych klucz-wartość, który obsługuje zarówno buforowanie, jak i obciążenia wykraczające poza buforowanie.

.NET Aspire umożliwia łatwe modelowanie protokołu Redis, Garnet lub Valkey RESP w aplikacjach i można wybrać, który z nich ma być używany na podstawie wymagań. Wszystkie integracje .NET AspireRedis mogą być używane z protokołem Redis, Garnet lub Valkey RESP.

Buforowanie

Buforowanie to technika używana do przechowywania często używanych danych w pamięci. Pomaga to skrócić czas pobierania danych z oryginalnego źródła, takiego jak baza danych lub usługa internetowa. Buforowanie może znacznie poprawić wydajność aplikacji, zmniejszając liczbę żądań wysyłanych do oryginalnego źródła. Aby uzyskać dostęp do obiektu RedisIConnectionMultiplexer, należy użyć pakietu NuGet Aspire.StackExchange.Redis:

Buforowanie rozproszone

Buforowanie rozproszone to typ buforowania, który przechowuje dane na wielu serwerach. Dzięki temu dane mogą być współdzielone między wieloma wystąpieniami aplikacji, co może pomóc zwiększyć skalowalność i wydajność. Buforowanie rozproszone może służyć do przechowywania wielu różnych danych, takich jak stan sesji, profile użytkowników i często używane dane. Aby użyć buforowania rozproszonego Redis w aplikacji (interfejs IDistributedCache), użyj pakietu Aspire.StackExchange.Redis.DistributedCaching NuGet:

Buforowanie danych wyjściowych

Buforowanie danych wyjściowych to typ buforowania, który przechowuje dane wyjściowe strony internetowej lub odpowiedzi interfejsu API. Dzięki temu odpowiedź może być obsługiwana bezpośrednio z pamięci podręcznej, zamiast generować ją od podstaw za każdym razem. Buforowanie danych wyjściowych może pomóc zwiększyć wydajność aplikacji internetowej, skracając czas potrzebny na wygenerowanie odpowiedzi. Aby użyć deklaratywnego buforowania danych wyjściowych Redis z atrybutem OutputCache lub metodą CacheOutput w aplikacji, użyj pakietu Aspire.StackExchange.Redis.OutputCaching NuGet:

integracja buforowania danych wyjściowych .NET Aspire Stack Exchange Redis

integracja buforowania danych wyjściowych (Garnet) .NET Aspire Stack Exchange Redis (Garnet)

Zobacz też

*: Redis jest zastrzeżonym znakiem towarowym Redis Ltd. Wszelkie prawa, które istnieją, są zastrzeżone do Redis Ltd. Każde użycie przez firmę Microsoft jest przeznaczone tylko do celów referentalnych i nie wskazuje żadnych sponsorów, poparcia ani przynależności między Redis a firmą Microsoft. powrócić do góry?