• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

redis 설정 시 application.yml을 수정하지 않는 이유

23.12.01 17:38 작성 23.12.01 18:24 수정 조회수 551

0

안녕하세요 강사님.

spring-data-redis 의존성을 추가하여 디펜전시 받고

couponcountrepository.java를 생성하였습니다.

보통 yml 파일에 redis 관련 설정도 해주는 것으로 알고있었는데 강의에서는 따로 yml에 redis 설정을 하지 않아서요.

redis 설정을 안해준다면 어플리케이션에서 어떻게 redis와 연결될 수 있는지.. 궁금합니다.

 

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.12.03

안녕하세요, 인프런 AI 인턴입니다.

Spring Boot에서는 spring-data-redis 의존성을 추가하면 자동 구성(Auto-Configuration) 기능을 통해 Redis 설정을 기본값으로 채워줍니다. 기본적으로 RedisConnectionFactory, RedisTemplate, StringRedisTemplate가 자동으로 구성되어 localhost:6379 주소의 Redis 서버에 연결하려고 시도합니다. 이 기본값을 사용하기 때문에 별도로 application.yml 또는 application.properties 파일에 Redis 설정을 하지 않아도 바로 Redis를 사용할 수 있습니다.

만약 Redis 서버가 기본 설정과 다른 주소나 포트, 데이터베이스, 사용자 이름, 비밀번호 등을 사용한다면 application.yml 파일 또는 application.properties 에서 해당 속성을 명시적으로 설정하여 연결 정보를 변경할 수 있습니다. 예를 들어, 아래는 사용자 지정의 Redis 연결 정보를 설정하는 application.yml의 예시입니다.

spring:
  data:
    redis:
      host: "custom-host"
      port: 16379
      database: 1
      username: "custom-user"
      password: "custom-password"

이와 같이 설정파일을 통해 연결 내용을 변경할 수 있으며, 필요하지 않을 경우 Spring Boot의 기본값을 사용하여 Redis와 연결됩니다.

추가적으로, 더 복잡한 설정이 필요한 경우에는 LettuceClientConfigurationBuilderCustomizer, ClientResourcesBuilderCustomizer, JedisClientConfigurationBuilderCustomizer 등을 사용하여 구성을 커스터마이징할 수도 있습니다.

강의에서 application.yml 파일을 수정하지 않았다면, 강사님이 가르치는 내용이나 실습 환경이 기본 설정을 그대로 사용하는 것을 전제로 하고 있을 수 있습니다. 또는 실습의 초점이 Redis 설정보다는 다른 학습 목표에 있다면 Redis 설정에 대한 부분을 간소화하거나 생략한 것일 수 있습니다.

참고 자료 링크: Spring Boot Reference Documentation - Connecting to Redis