본문 바로가기

REDIS4

WAS, Redis, RabbitMQ 이게 먼데? 왜 이걸 꼭 써야 한다는거야? (부제 : 나의 무식함을 알았다) 나는 왜 Redis / RabbitMQ 이야기를 들으면 짜증이 날까 (그리고 그게 나쁜 신호가 아닌 이유) 갑자기 짜증이 났다. 이유는 단순했다. “왜 다들 그걸 공부해야 할 대상으로 만들지?” “그게 도대체 뭔데? 왜 필요한데?” 이 감정은 예전에도 똑같이 겪었다. 사람들이 WAS를 공부한다고 난리였을 때였다. 나는 속으로 이 생각을 했다. “WAS가 뭐길래 난리야…?” “나는 오라클, 아파치, 톰캣 설치해서 쓰고 있는데…” 나중에 알고 보니, 나는 WAS라는 단어를 몰랐을 뿐 이미 그 세계를 살고 있었다. 오늘 Redis / RabbitMQ 이야기도 그때랑 같은 결이었다. .. 2026. 2. 10.
Redis 불편한 도구 그러나 (2) 어떻게 구조화 하는것이 redis에서는 올바른가 어떻게 구조화 하는것이 Redis에서는 올바른가: 초당 100건 Push 데이터 파이프라인 갑자기 이런 생각이 들었다. “push 서버로 초당 100건씩 날아오는 자료를 전부 Redis에 저장해두고, 분리/검색 후 필요한 내용으로 변환해서 DB에 저장하면 어떨까?” 결론부터 말하면 가능하고, 더 중요한 포인트는 “Redis에 다 저장한다”가 아니라 수신/처리/저장을 분리해서 시스템이 느려져도 깨지지 않게 만드는 것이다. 핵심 아이디어 수신(Ingest): 받는 것 자체가 목표 (절대 막히면 안 됨) 큐/버퍼(Buffer): 처리 지연을 흡수 (유입과 처리를 분리) 처리(Process): 분리/정리/변환 (CPU를 쓰는 구간) DB 저.. 2026. 2. 7.
Redis 불편한 도구 그러나 Redis 지원해주는 기능이 너는 뭐니? 정말 부가기능이 없다. 리스트에 일일히 넣어줘야 하는 이 불편함.배열에 배열을 못넣는 이불편함 Redis의 철학: 일부러 불친절한 시스템이 주는 신뢰감 Redis를 배우다 보면 이런 생각이 든다. “왜 이렇게 자동으로 안 해주지?” 그런데 이상하게도, 어느 순간부터는 그 불친절함이 오히려 마음에 들기도 한다. 한 문장으로 요약 “자동으로 해주지 않겠다. 대신, 아주 빠르게 해주겠다.” Redis가 일부러 안 해주는 것들 조건 검색(WHERE 같은 것) 자동 지원 ❌ 자동 인덱스 생성 ❌ 관계형 조인/추론 ❌ 스키마 강제 ❌ 자료형 중첩(HASH 안에 HASH 등) ❌ 필드 단위 .. 2026. 2. 7.
Redis 자료형 그리고 간단한 설치 Redis에 대해서 감을 잡는데 너무나 오랜시간이 흘렀다.설명에는 부하 분산이라고 이야기들을 많이 한다. 그래서 마치 웹서비스 요청시에 웹서버 대신 하는 것처럼 그려놓은것으로 나는 오해했다.Redis는 메모리에 data를 저장하는 도구이다. 어떤 언어든 redis를 지원한다면 사용가능하다.이것을 왜 사용하냐는 간단하다 디비를 너무 써서 디비가 느려져서 힘드니까.전에 나는 이 이슈을 해결하고자 메모리에 올려놓고 데몬으로 해결했다. (이래서 꼰대인가보다)이렇게 좋은 도구가 오래 전에 이미 나와있는데.....설치는 다음과 같이 간단하다. rocky9 기준이지만 다른 OS에서도 간단하게 된다. centos, ubuntu도 Rocky Linux 9에서 Redis 설치하기 (Nginx 환경 기준) Red.. 2026. 2. 7.