0Pricing
C# Academy · 강의

Redis 연결

Redis 분산 캐시를 구성합니다.

Redis 연결은(는) CoddyKit의 무료 C# Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 C# Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. C# Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

Redis란 무엇인가요

Redis는 빠른 메모리 내 키-값 데이터 저장소이며, 분산 캐시로 널리 사용됩니다. 별도의 서버로 실행되며 여러 앱 인스턴스가 네트워크를 통해 연결합니다.

패키지 설치

ASP.NET Core는 Microsoft.Extensions.Caching.StackExchangeRedis 패키지를 통해 Redis와 통합됩니다. 이 패키지는 StackExchange.Redis 클라이언트를 IDistributedCache에 맞게 조정합니다.

dotnet add package Microsoft.Extensions.Caching.StackExchangeRedis

AddStackExchangeRedisCache로 Redis 등록하기

서비스 등록 과정에서 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 실행하기

개발 환경에서는 Docker로 Redis를 빠르게 실행한 다음 연결 문자열이 해당 Redis를 가리키도록 설정할 수 있습니다.

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를 설치하고 Configuration 연결 문자열과 함께 AddStackExchangeRedisCache를 호출합니다. 필요하면 InstanceName 접두사도 지정할 수 있습니다. 서비스에서는 계속 변경 없이 IDistributedCache를 사용합니다. 환경별 구성을 사용하고, 복원력을 위해 abortConnect=False를 설정하며, Redis 상태 확인을 추가하시기 바랍니다.

자주 묻는 질문

“Redis 연결” 강의는 무료인가요?

네 — “Redis 연결” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 C# Academy 강의 전체를 잠금 해제할 수 있습니다. C# Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“Redis 연결”에서 뭘 배우나요?

Redis 분산 캐시를 구성합니다. 브라우저에서 직접 실행하는 실습 코드로 C# Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

C# Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 C# Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“Redis 연결” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 C# Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 C# Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. IDistributedCache 추상화
  2. Redis 연결
  3. 캐시 패턴과 만료
  4. 직렬화된 객체 캐싱
← C# Academy(으)로 돌아가기