0Pricing
C# Academy · Урок

Подключение к Redis

Настройте распределённый кэш Redis.

«Подключение к Redis» — бесплатный урок C# Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C# Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C# Academy содержит 4 уроков всего.

Что такое Redis

Redis — это быстрое хранилище данных «ключ-значение» в памяти, широко используемое как распределённый кэш. Оно работает как отдельный сервер, к которому несколько экземпляров приложения подключаются по сети.

Установка пакета

ASP.NET Core интегрируется с Redis через пакет Microsoft.Extensions.Caching.StackExchangeRedis, который адаптирует клиент StackExchange.Redis к IDistributedCache.

dotnet add package Microsoft.Extensions.Caching.StackExchangeRedis

Регистрация Redis с помощью AddStackExchangeRedisCache

Вызовите AddStackExchangeRedisCache при регистрации служб и передайте строку подключения. Это подключит Redis как реализацию IDistributedCache.

builder.Services.AddStackExchangeRedisCache(options =>
{
    options.Configuration = "localhost:6379";
});

Использование конфигурации

Храните строку подключения в appsettings.json и считывайте её через IConfiguration, чтобы она могла различаться в разных окружениях.

builder.Services.AddStackExchangeRedisCache(options =>
{
    options.Configuration =
        builder.Configuration.GetConnectionString("Redis");
});

Префикс InstanceName

Задайте InstanceName, чтобы добавлять этот префикс ко всем ключам, которые хранит Redis. Так ключи приложения получают собственное пространство имён, и несколько приложений могут безопасно использовать один экземпляр Redis.

builder.Services.AddStackExchangeRedisCache(options =>
{
    options.Configuration = "localhost:6379";
    options.InstanceName = "MyApp:";
});

Параметры строки подключения

Строка подключения StackExchange.Redis поддерживает множество параметров: несколько конечных точек, пароль, SSL и время ожидания. Все они разделяются запятыми.

options.Configuration =
    "redis-server:6380,password=secret,ssl=True,abortConnect=False";

Тот же интерфейс, настоящий Redis

После регистрации продолжайте использовать IDistributedCache точно так же, как раньше. Меняется только строка регистрации, поэтому для начала работы с Redis не нужно редактировать службы.

public WeatherService(IDistributedCache cache) => _cache = cache;
// GetStringAsync / SetStringAsync now talk to Redis

Запуск Redis локально

Для разработки можно быстро запустить Redis с помощью Docker, а затем указать его в строке подключения.

docker run -p 6379:6379 redis:7
# then Configuration = "localhost:6379"

Варианты управляемого Redis

В рабочей среде управляемые службы, такие как Azure Cache for Redis или AWS ElastiCache, берут на себя масштабирование, сохранение данных и автоматическое переключение при сбоях. Обычно подключение выполняется через конечную точку SSL и ключ доступа.

options.Configuration =
    "myapp.redis.cache.windows.net:6380,password=KEY,ssl=True";

Обеспечение устойчивости подключения

Задайте abortConnect=False, чтобы клиент продолжал повторять попытки, если Redis временно недоступен при запуске, вместо немедленного создания исключения. Для устойчивости на уровне вызовов объедините это с Polly.

Проверки работоспособности

Зарегистрируйте проверку работоспособности Redis, чтобы приложение могло сообщать оркестраторам и балансировщикам нагрузки о доступности кэша.

builder.Services.AddHealthChecks()
    .AddRedis("localhost:6379");

Быстрая проверка

Проверьте подключение к Redis.

Итоги

Redis — это быстрый внешний кэш. Установите Microsoft.Extensions.Caching.StackExchangeRedis и вызовите AddStackExchangeRedisCache со строкой подключения из Configuration, при необходимости добавив префикс InstanceName. Службы продолжают использовать IDistributedCache без изменений. Используйте конфигурацию для каждого окружения, задайте abortConnect=False для повышения устойчивости и добавьте проверку работоспособности Redis.

Часто задаваемые вопросы

Урок «Подключение к Redis» бесплатный?

Да — полный текст урока «Подключение к Redis» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C# Academy, подпишись на CoddyKit PRO. Курс C# Academy содержит 4 уроков всего.

Чему я научусь в уроке «Подключение к Redis»?

Настройте распределённый кэш Redis. Ты практикуешь C# Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать C# Academy?

Предыдущий опыт не требуется. C# Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Подключение к Redis»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке C# Academy?

Да. Каждый урок C# Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Абстракция IDistributedCache
  2. Подключение к Redis
  3. Шаблоны кэширования и истечение срока действия
  4. Кэширование сериализованных объектов
← Назад к C# Academy