Redis 4

[Redis] Redis Streams

개요 MSA(Micro Service Architecture)를 적용한 프로젝트 내 각 모듈들은 확실히 분리되고 독립성을 가지는 것이 가장 중요합니다. 이 때문에 각 서비스들은 별도 독립된 DB를 가진 상태로 상호 간 API를 이용해 통신하는 케이스가 많습니다. 이런 구조는 모듈끼리 결합도가 강해지는 단점이 있는데 Event-Driven 아키텍처를 적용하면서 이벤트 생산자/소비자 간 결합도를 낮추는 장점을 취할 수 있습니다. 이번 게시글에서는 MSA 개념을 간단히 복습 후 Event-Driven 아키텍처의 장단점 및 해당 아키텍처를 적용한 Redis Streams를 다루겠습니다. MSA MSA는 아래의 특성을 가집니다. 시스템을 독립적인 단위의 작은 서비스들로 분리 각 서비스들은 별도 DB를 가지고 다..

Redis 2023.11.22

[Redis] Redis 성능 튜닝

개요 Redis 성능을 향상하기 위해 아래와 같은 조치를 취할 수 있습니다. 메모리가 한계에 도달했을 때 조치 사항을 설정하는 Eviction 정책 설정 Redis는 시스템 환경 특히 네트워크 환경에 영향을 많이 받기 때문에 시스템 튜닝을 통한 성능 향상 SLOWLOG 모니터링을 통해 느린 쿼리 튜닝 이외에도 서버 튜닝이 있으나 서버 튜닝의 경우 보통 레디스 설치 시 제공되는 기본 아키텍처를 적용하면 크게 문제가 되지 않을 것이기 때문에 생략하겠습니다. Eviction 정책 Eviction 정책은 앞서 언급했듯이 Redis 서버 메로리가 한계에 도달했을 때 어떤 조치를 취할지를 결정합니다. 궁극적으로는 처음부터 메모리가 부족한 상황을 만들지 않는 것이 중요하지만 이러한 장애는 예상치 못할 때 발생하기 때..

Redis 2023.11.21

[Redis] Redis 클러스터 개념 정리

개요 앞서 작성한 Redis 백업 및 장애 복구 방법 게시글에서 언급했다시피 대용량 트래픽이 예상되는 서비스에서는 주로 Redis Sentinel 대신 Redis Cluster를 구성해서 운영을 합니다. [Redis] Redis 백업 및 장애 복구 방법 정리 개요 Redis 백업 방식은 크게 RDB(Redis Database)를 사용하는 방법과 AOF(Append Only File)를 사용하는 방법으로 나뉩니다. Redis 장애 복구 방법으로 Redis Sentinel의 auto-failover 기능이 쓰이며 이때 Redis replicatio jaimemin.tistory.com 이번 게시글에서는 Redis Cluster 관련 개념을 간단히 정리하고 로컬에서 간단하게 클러스터 구축하는 방법에 대해 정리..

Redis 2023.11.20

[Redis] Redis 백업 및 장애 복구 방법 정리

개요 Redis 백업 방식은 크게 RDB(Redis Database)를 사용하는 방법과 AOF(Append Only File)를 사용하는 방법으로 나뉩니다. Redis 장애 복구 방법으로 Redis Sentinel의 auto-failover 기능이 쓰이며 이때 Redis replication이 필요하므로 위에 언급된 두 백업 방식과 함께 Redis 복제 및 Sentinel에 대해 간단히 정리해 보겠습니다. * 대규모 시스템에서는 Redis Cluster가 쓰이는데 이는 별도로 정리하겠습니다. https://jaimemin.tistory.com/2329 [Redis] Redis 클러스터 개념 정리 개요 앞서 작성한 Redis 백업 및 장애 복구 방법 게시글에서 언급했다시피 대용량 트래픽이 예상되는 서비스에..

Redis 2023.11.15