Redis
 sql >> база данни >  >> NoSQL >> Redis

Трябва ли `StackExchange.Redis.ConnectionMultiplexer` да бъде `AddSingleton` или `AddScope` в .NET Core инжекция на зависимост?

Какво се очаква натоварването на приложението? Ако имате много паралелност, мисля, че използвате AddScoped би означавало много ненужна тежест за иницииране и затваряне на връзки за всяка заявка.

Също така тези наблюдения IMHO показват, че трябва да използвате AddSingleton

(...) изключително рядко е да искате да използвате aConnectionMultiplexer за кратко, тъй като идеята е да използвате повторно този обект.

Друга често срещана употреба на redis е като инструмент за разпространение на съобщения в pub/sub; това също е просто и в случай на неуспешна връзка, ConnectionMultiplexer ще се справи с всички подробности за повторното абониране за заявените канали.

Освен това ще спестите памет, като имате само един екземпляр на ConnectionMultiplexer (IMHO).




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Redis и заявка на стойности

  2. Node.js Redis Connection Pooling

  3. Свържете се с AWS ElastiCache с шифроване при транспортиране + удостоверяване от клиент, различен от redis-cli+stunnel

  4. StackExchange Redis ChannelPrefix не ключове за обхват

  5. Защо Redis SortedSet използва Skip List вместо Balanced Tree?