sql >> Databasteknik >  >> NoSQL >> Redis

Ska "StackExchange.Redis.ConnectionMultiplexer" vara "AddSingleton" eller "AddScope" i .NET Core-beroendeinjektion?

Vilken belastning förväntas appen? Om du har mycket samtidighet tror jag att du använder AddScoped skulle innebära en hel del onödig börda att initiera och stänga kontakter för varje förfrågan.

Även dessa observationer IMHO visar att du bör använda AddSingleton

(...) det är exceptionellt sällsynt att du skulle vilja använda aConnectionMultiplexer kort, eftersom tanken är att återanvända detta objekt.

En annan vanlig användning av redis är som ett distributionsverktyg för pub/undermeddelanden; detta är också enkelt, och i händelse av anslutningsfel kommer ConnectionMultiplexer att hantera alla detaljer för att prenumerera på de begärda kanalerna.

Dessutom kommer du att spara minne med bara en instans av ConnectionMultiplexer (IMHO).




  1. Lägg till ett nytt fält till varje dokument i en MongoDB-samling

  2. MongoDB $arrayElemAt

  3. MongoDB $radiansToDegrees

  4. Redis lua när ska man verkligen använda det?