DataManagement3 Redis Sentinel의 이해: 고가용성을 위한 모니터링 및 장애 조치 전략 Sentinel 구조 기능 모니터링(Monitoring) : Redis의 Master / Slave 가 정상 작동하고 있는지 지속적으로 감시 알림(Notification) : Redis 가 failover 되었을 때 pub / sub 로 클라이언트에게 알려주거나 shell script 로 이메일이나 SMS로 클라이언트에게 알려준다. Sentinel은 '"__sentinel__:hello"` 채널을 통해 pub / sub 메시지를 전송합니다. 클라이언트는 이 채널을 구독하여 Sentinel의 이벤트를 수신할 수 있습니다. 주의할 점은 '"__sentinel__:hello"` 채널은 Sentinel의 상태 및 구성 정보를 주기적으로 공유하기 위한 주요 채널이기 때문에 failover 외의 다양.. 2024. 1. 25. Redis ZSet의 이해: 스코어 기반 정렬의 모든 것 Sorted Set (ZSet) 이란? Set의 특성을 그대로 가지면서 추가적으로 저장된 Value(Member)들의 순서도 관리해줍니다. 순서를 위해 value(member)에 대해 score를 필요에 맞게 설정할 수 있으며, score를 기반으로 정렬됩니다. Sorted Set 구조 Sorted Set 명령어 1. ZADD ZADD key scroe member zadd는 key와 score member를 통해 값을 추가 및 변경 하는 명령어입니다. zset에 각 과일의 이름과 가격 데이터를 추가합니다. 과일 데이터를 저장할 zset의 key는 fruit라고 정하였고 key의 각 value(member)를 apple, banana, melone, pineapple, peach라고 정하였습니다. 1개씩.. 2024. 1. 25. 싱글 스레드의 이해와 Redis의 고급 관리 전략 1. Redis 운영과 관리 Redis는 싱글 스레드 Redis를 사용하면서 Redis가 싱글 스레드라는 걸 잊어버려 의도치 않게 성능이 안나오거나 장애가 발생하는 경우가 있습니다. Redis는 싱글 스레드 기반이므로 오래 걸리는 명령은 적합하지 않습니다. ex) keys 명령어 keys는 서버에 저장된 모든 Key 목록을 보는 명령어 입니다. 모든 Key를 검색하기 때문에 Key가 몇백만개, 몇천만개 등.. Key가 많을 수록 많은 시간을 소모하게 됩니다. flushall / flushdb 명령을 주의하자 Redis는 db라는 가상의 공간을 분리할 수 있는 개념을 제공해주고 select 명령어로 이런 db로 이동할 수 있습니다. flushdb는 이러한 db 하나에 대한 모든 데이터를 지우는 것이며 fl.. 2024. 1. 25. 이전 1 다음