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

Czy „StackExchange.Redis.ConnectionMultiplexer” powinien być „AddSingleton” czy „AddScope” w iniekcji zależności .NET Core?

Jakie jest oczekiwane obciążenie aplikacji? Jeśli masz dużo współbieżności, myślę, że używając AddScoped oznaczałoby wiele niepotrzebnego obciążenia przy inicjowaniu i zamykaniu połączeń dla każdego żądania.

Również te obserwacje IMHO pokazują, że powinieneś użyć AddSingleton

(...) jest wyjątkowo rzadkie, że chciałbyś użyć ConnectionMultiplexer krótko, ponieważ chodzi o ponowne użycie tego obiektu.

Innym powszechnym zastosowaniem redis jest narzędzie do dystrybucji wiadomości pub/sub; jest to również proste i w przypadku awarii połączenia,ConnectionMultiplexer zajmie się wszystkimi szczegółami ponownej subskrypcji żądanych kanałów.

Ponadto zaoszczędzisz pamięć mając tylko jedną instancję ConnectionMultiplexer (IMHO).




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. To samo zadanie wykonywane wielokrotnie

  2. wykonanie polecenia redis eval w celu uruchomienia skryptu Lua w nodeJS

  3. Jak zaimplementować funkcję limitu czasu pubsub w redis?

  4. Czy wątek Redis list lub set metoda pop jest bezpieczny?

  5. Redis::CommandError:ERR Klient wysłał AUTH, ale nie ustawiono hasła