Использует ли StackExchange.Redis локальную память в кеше памяти?

StackExchange.Redis — популярный клиент Redis C#. Мне неясно, использует ли StackExchange.Redis многоуровневое кэширование?

То есть, если я много раз вызываю следующий код с веб-сайта Asp.net; Клиент Redis пропускает перемещение по сети и вместо этого использует локальный (встроенный кэш памяти Asp.net)? Или это тот случай, когда мы будем запрашивать фактический узел redis каждый раз?

IDatabase db = redis.GetDatabase();
string value = db.StringGet("mykey");

person Ehsan Samani    schedule 02.07.2015    source источник
comment
Значение может быть изменено, поэтому метод должен каждый раз получать значение с сервера, чтобы возвращать самое последнее значение.   -  person tia    schedule 03.07.2015
comment
StackExchange.Redis не использует Local в кэше памяти. Вы можете добавить это самостоятельно в код приложения.   -  person pranav rastogi    schedule 06.07.2015


Ответы (1)


Несколько устаревший вопрос, но, возможно, все же полезный: если вам нужен многоуровневый кеш .net с локальным уровнем в памяти и необязательным распределенным (например, Redis), управляемым прозрачно для вас, могу ли я предложить вам взглянуть на FusionCache ?

Я только что выпустил его, и было бы здорово, если бы вы нашли его каким-то образом полезным.

Вы также можете найти некоторые другие интересные функции, такие как оптимизация, чтобы избежать нескольких одновременных вызовов factory для одного и того же ключа кэша, a отказоустойчивый механизм, расширенные тайм-ауты с фоновым завершением фабрики и поддержкой необязательного распространяемого 2-й уровень.

Если вы дадите ему шанс, пожалуйста, дайте мне знать, что вы думаете.

/ бесстыжие-штекер

person Jody Donetti    schedule 02.01.2021