Redis
 sql >> Database >  >> NoSQL >> Redis

"StackExchange.Redis.ConnectionMultiplexer" dovrebbe essere "AddSingleton" o "AddScope" nell'iniezione di dipendenze .NET Core?

Qual è il carico previsto per l'app? Se hai molta concorrenza, penso di usare AddScoped significherebbe un sacco di oneri inutili per avviare e chiudere connessioni per ogni richiesta.

Anche queste osservazioni IMHO mostrano che dovresti usare AddSingleton

(...) è eccezionalmente raro che tu voglia utilizzare brevemente unConnectionMultiplexer, poiché l'idea è di riutilizzare questo oggetto.

Un altro uso comune di redis è come strumento di distribuzione di messaggi pub/sub; anche questo è semplice e in caso di errore di connessione, il ConnectionMultiplexer gestirà tutti i dettagli della riiscrizione ai canali richiesti.

Inoltre, risparmierai memoria avendo solo un'istanza di ConnectionMultiplexer (IMHO).