
수많은 데이터베이스가 존재하는 세상,
단 하나의 데이터베이스가 나머지를 지배합니다.
Redis 는 속도와 간단한 것으로 유명한 인메모리 데이터베이스입니다. 원래는 단순한 캐싱 에만 사용되었지만, 기능 세트가 확장되면서 아주 다양한 곳에 쓰이는 데이터베이스가 되었죠.
이 강의 과정에서는 Redis 를 새로운 프로젝트 또는 기존의 프로젝트에 통합하기 위해 알아야 할 모든 것을 알려드립니다.
데이터를 추가, 업데이트, 쿼리 하는데 쓰이는 명령어를 직접 사용하며 연습할 수 있습니다.
E-commerce 이커머스 앱에 Redis 를 추가하면서 우수 사례와 여러 설계 패턴에 적용해 봅니다.
모듈과 스크립트를 사용해 Redis 내부를 이해하고 확장합니다.
근본적인 동시성 문제와 해결책을 자세히 살펴보며 Redis 를 마스터합니다.
데이터 구조는 Redis의 핵심입니다.
Redis 는 복잡한 추상화 뒤에 기능을 숨기는 대신 개발자가 데이터를 저장하고 쿼리하는 데 사용할 수 있는 강력한 데이터 구조들을 보여줍니다. 이러한 다양한 데이터 구조를 배우는 것이 Redis 를 마스터할 때 가장 중요합니다. 우리 강의 과정은 정렬 집합 (sorted set)과 해시 (hash)의 차이를 이해하는 데 집중합니다. 전체 과정을 수료하고 나면 각 구조를 언제 사용해야 하는지, 장단점은 무엇인지 이해하게 될 겁니다. 알고리즘이나 데이터 구조에 관한 배경지식이 없다고요? 괜찮아요! 전 강의는 수강생에게 사전 지식이 없다는 가정하에 진행됩니다.
전 세계의 거의 모든 주요 기업이 Redis 를 사용합니다.
트위터(Twitter), 깃허브(GitHub), 스냅챗(Snapchat), 크레이그리스트(Craigslist), 스택오버플로(StackOverflow) 모두 Redis를 사용하죠! 여러분이 매일 사용하는 거의 모든 주요 웹 제품이 보이지 않는 곳에서 Redis를 활용합니다. 대기업뿐만이 아닙니다. 소규모 스타트업 역시 Redis를 사용하죠.
Redis 를 이해하려면 Redis 를 직접 사용해 봐야 합니다.
명령어만 외운다고 되는 게 아닙니다. 실제로 해 봐야죠! 그렇기에 우리 강의에서는 여러 다양한 실습과 퀴즈를 진행합니다. 그리고 전체 과정을 통해 대규모 이커머스 애플리케이션도 구축하게 됩니다. 걱정 마세요. 프론트엔드에서 코드를 쓸 필요는 없으니까요. Redis 에서 새로운 주제를 배워 나가면서 이커머스 앱에 새 기능도 추가할 거예요. Redis 의 주요 기능들을 사용하는 이유와 언제 써야하는 지 이해하게 될 겁니다.
내장된 커닝 페이퍼
Redis 에 관한 많은 자료가 터미널 창에서 실행 중인 명령어를 보여줍니다. 이 접근방식은 기본적인 명령어도 기억하기 어렵게 만들죠. 우리 강의에서는 다른 접근법을 취합니다. 이 강의에서 여러분이 활용할 수 있도록 RBook 이라는 독립형 웹앱을 만들었습니다. 이 앱은 여러분의 Redis 인스턴스에 대해 명령을 실행하고 동시에 문서화할 수 있도록 돕기 때문에 나중에 쉽게 기록을 확인할 수 있습니다. 물론 원치 않으면 RBook 을 사용하지 않아도 됩니다!
효과적인 학습
이 강의 과정의 모든 내용은 최대한 쉽게 학습 과정이 진행될 수 있도록 설계되었습니다:
모든 단계에서 Redis 가 내부적으로 어떤 작업을 하는지 설명하고, 어떻게 Redis 를 이리저리 활용하여 애플리케이션에 필요한 부분을 충족시킬 수 있는지 알려드립니다.
모든 강의 영상에는 최신 코드가 포함된 압축(zip) 파일이 첨부되어 있으므로 막히는 부분에서 참고할 수 있습니다.
여러분의 질문에 대답할 수 있도록 전임 조교가 대기하고 있습니다.
수강생들은 비공개 실시간 채팅 서버에 접근할 수 있습니다. 필요한 때마다 도움을 받으세요!
그 외에도 정말 다양한 것이 있어요.
이 강의 과정에서 배우게 될 내용 중 일부만 소개해 드릴게요.
데이터를 저장, 업데이트, 쿼리하는 기본 명령어 작성하기
실습과 퀴즈를 통해 기술 연습하기
Redis의 거의 모든 주요 기능을 사용해 이커머스 앱 구축하기
집합, 정렬 집합, 리스트를 사용해 데이터 제약 조건 실행하기
Redis의 각 주요 구조를 사용해야 경우 이해하기
다양한 설계 패턴 적용하여 기존의 코드베이스에 통합하기
Redis Cloud 를 통해 AWS나 GCP, Azure 사용하여 안전하게 Redis 인스턴스 배포하기
실시간 API를 통해 소싱된 통계와 메트릭 수집하기
스트림(Stream) 을 사용해 서로 다른 서버 사이에서 통신하기
안전하게 데이터를 저장하기 위해 트랜잭션(transaction) 개념 이해하기
동시성 문제 해결을 위한 표준 락킹(locking) 알고리즘 구현하기
Redis 는 간단하다고 알려져 있지만, 배우는 건 여전히 어렵습니다.
수많은 기능이 들어 있는 거대한 도구 상자가 주어지지만 각 기능을 언제 사용해야 하는지에 관한 명확한 지침은 없죠. 이 강의 과정은 여러분에게 방향을 제시하고자 합니다. 각 기능이 왜 존재하는지, 실제 앱에서는 언제 사용해야 하는지 이해하게 될 겁니다. Redis 를 배우는 일이 즐거운 경험이라는 걸 알게 될 거예요. 그리고 그 과정에서 어마어마한 양의 지식을 얻게 될 겁니다.
지금 바로 등록하고 Redis 마스터가 되어 봅시다!