본문 바로가기

DevLog/Redis5

🚨 Docker로 Redis 실행 시 포트 충돌 에러 해결하기 (bind: address already in use) 1. 문제 상황Docker로 Redis 컨테이너를 실행하려고 했는데 아래와 같은 에러가 발생했다.Error response from daemon: ports are not available: exposing port TCP 0.0.0.0:6379 -> 127.0.0.1:0: listen tcp 0.0.0.0:6379: bind: address already in use❌ Redis 실행 실패./start-dev.sh를 실행하면 컨테이너가 뜨지 않고 실패한다.2. 원인 분석Redis의 기본 포트는 6379그런데 이미 로컬에서 실행 중인 redis-server 프로세스가 6379를 점유 중이었다.거기에 docker run으로 Redis를 띄우려 하니 포트가 겹쳐서 충돌 발생 ⚡️확인 방법:lsof -i :6.. 2025. 8. 28.
🚨 Spring Boot + Redis 연결 오류: RedisConnectionFailureException: Unable to connect to Redis 1. 문제 상황Spring Boot 프로젝트 실행 시, 아래와 같은 에러 로그 발생:org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis...Caused by: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: localhost/127.0.0.1:6379​Spring Boot 애플리케이션에서 Redis에 연결을 시도했지만 실패localhost:6379 포트에서 연결 거부(Connection refused) 발생2. 원인 분석에러 메시지를 보면, Redis 서버가 실행 중이거나 접근 가능한 상태가 아님을 의.. 2025. 8. 20.
[Redis] Redis 정리 #3 - 캐시 적용과 @Cacheable 사용법 📖 이 글은 Redis 공식 문서 및 Spring Data Redis 문서를 기반으로 작성되었습니다.💡 Java 기반 실무 개발 관점에서 캐시 전략과 @Cacheable 사용법을 정리합니다. 🔹 왜 Redis 캐시를 사용하는가?이유설명속도 향상DB 호출을 줄여 응답 속도 개선부하 분산자주 조회되는 데이터는 Redis에 저장해 DB 부하 감소TTL 설정 가능데이터 만료를 설정해 메모리 사용을 제어 가능비동기 연산 캐싱계산 결과, AI 응답 등 캐싱 가능 🔹 캐시 적용 방식 비교 방식설명실무 사용RedisTemplate 수동 설정직접 key-value로 캐시 처리커스터마이징 필요할 때@Cacheable 어노테이션스프링 추상화 기반 캐시 처리가장 보편적 방식@CacheEvict, @CachePut캐시 .. 2025. 7. 20.
[Redis] Redis 정리 #2 - 자료구조와 명령어 📖 이 글은 Redis 공식 문서(Data Types)를 기반으로 작성되었습니다.💡 Java 기반 개발 관점에서 Redis 자료구조와 명령어를 정리합니다. 🔹 Redis에서 지원하는 주요 자료구조자료구조설명 및 사용 예시 자료구조설명 및 사용 예시String가장 기본적인 자료형 (숫자, 문자 모두 가능)Hash필드-값 구조 (자바의 Map과 유사)List연결 리스트 (메시지 큐, 채팅 로그 등)Set중복 없는 집합 (태그, 유저 ID 모음 등)Sorted Set점수를 기준으로 정렬된 Set (랭킹 시스템 등)StreamKafka-like 로그 스트림 (실시간 로그/메시지 큐) 🔸 1. String✅ 대표 명령어: SET, GET, INCR, APPEND, EXPIRE SET name "혜진"GET.. 2025. 7. 20.
[Redis] Redis 정리 #1 - 개념과 특징 📖 이 글은 Redis 공식 문서(redis.io)를 기반으로 작성된 내용입니다.💡 Java 기반 개발 관점에서 Redis 개념과 구조를 정리합니다.Redis란 무엇인가?Redis는 Remote Dictionary Server의 약자로, 인메모리 기반의 고성능 데이터 저장소다.단순한 캐시를 넘어, 다양한 데이터 구조를 실시간으로 처리할 수 있다는 점에서 캐시, DB, 메시지 브로커 등 다양한 용도로 활용된다.🔹 Redis의 정의 (공식 문서 기반)Redis is an in-memory data store used by millions of developers as a cache, vector database, document database, streaming engine, and message b.. 2025. 7. 20.