Поделиться через


Обзор кэширования Stack Exchange® Redis*

При использовании .NET.NET Aspireсуществует несколько способов использования кэширования в приложениях. Одним из популярных вариантов является использование Stack Exchange Redis, что является высокопроизводительной хранилищем данных, которое можно использовать для хранения часто доступных данных. В этой статье представлен обзор кэширования Redis для Stack Exchange и ссылки на ресурсы, которые помогают использовать его в ваших приложениях.

Чтобы использовать несколько интеграций кэширования Redis в вашем приложении, см. Руководство: Реализация кэширования с помощью интеграций .NET.NET Aspire. Если вы хотите использовать кэш Redis для Azure, ознакомьтесь с руководством по . Развертывание проекта .NET Aspire с помощью кэша Redis для Azure.

протокол сериализации Redis (RESP)

Протокол сериализации Redis (RESP) — это двоичный безопасный протокол, который Redis используется для взаимодействия с клиентами. RESP — это простой текстовый протокол, который легко реализовать и эффективно анализировать. RESP используется для отправки команд в Redis и получения ответов от Redis. RESP предназначен для быстрого и эффективного использования, что хорошо подходит для использования в высокопроизводительных приложениях. Дополнительные сведения см. в Redis спецификации протокола сериализации.

Помимо самого Redis существует две хорошо поддерживаемые реализации RESP для .NET:

  • Гарнет. Гарнет — это удаленное хранилище кэша из Microsoft Research, которое обеспечивает высокую производительность (пропускную способность и задержку), масштабируемость, хранилище, восстановление, сегментирование кластера, миграцию ключей и функции репликации. Гарнет может работать с существующими клиентами Redis.
  • Valkey: гибкое распределенное хранилище данных с ключом-значением, которое поддерживает как кэширование, так и рабочие нагрузки, выходящие за рамки кэширования.

.NET Aspire позволяет легко моделировать протокол Redis, Garnet или Valkey RESP в приложениях и выбрать один из них в соответствии с вашими требованиями. Все интеграции .NET AspireRedis можно использовать с протоколом Redis, Garnet или Valkey RESP.

Кэширование

Кэширование — это метод, используемый для хранения часто используемых данных в памяти. Это помогает сократить время, необходимое для извлечения данных из исходного источника, таких как база данных или веб-служба. Кэширование может значительно повысить производительность приложения, уменьшая количество запросов, сделанных в исходный источник. Чтобы получить доступ к объекту RedisIConnectionMultiplexer, используйте пакет NuGet Aspire.StackExchange.Redis:

Интеграция Stack Exchange .NET AspireRedis (Garnet)

Распределенное кэширование

Распределенное кэширование — это тип кэширования, который хранит данные на нескольких серверах. Это позволяет совместно использовать данные между несколькими экземплярами приложения, что может помочь повысить масштабируемость и производительность. Распределенное кэширование можно использовать для хранения различных данных, таких как состояние сеанса, профили пользователей и часто доступные данные. Чтобы использовать Redis распределенное кэширование в приложении (интерфейс IDistributedCache), используйте пакет NuGet Aspire.StackExchange.Redis.DistributedCaching:

Кэширование выходных данных

Кэширование выходных данных — это тип кэширования, который хранит выходные данные веб-страницы или ответа API. Это позволяет отправлять ответ непосредственно из кэша, а не создавать его с нуля каждый раз. Кэширование выходных данных может помочь повысить производительность веб-приложения, сокращая время, затраченное на создание ответа. Чтобы использовать декларативное Redis кэширование выходных данных с атрибутом OutputCache или методом CacheOutput в приложении, используйте пакет NuGet Aspire.StackExchange.Redis.OutputCaching:

См. также

*: Redis является зарегистрированным товарным знаком Redis Ltd. Любые права, указанные в них, зарезервированы для Redis Ltd. Любое использование корпорации Майкрософт предназначено только для ссылок и не указывает на спонсорство, подтверждение или принадлежность между Redis и Корпорацией Майкрософт. Вернуться к верхней?