Redis 13

Redis 의 pub 과 sub 기능

Redis를 활용하여 메시지를 발행하고 구독하는 서비스이다. Redis Pub/Sub 기능시스템에서 동일한 채널을 여러 구독자가 구독하여 해당 채널로 발행된 메시지가 모든 구독자에게 발송이 된다.한번 발송된 메시지는 저장이 되지 않는다. 한마디로 메시지가 기본적으로 웹서버의 주소가 여러개 가 저장이 된 메모리(Redis) 로 저장이 되고 (이걸 구독이 되었다고 표현 함) Redis에서 웹서버 (여러개에서 발행된 메시지를) 모든 구독자들에게 발송을 해 준다. 실습예시)터미널1 : SUBSCRIBE test_channel터미널2 : PUBLISH test_channel "Hello, this is a test message"Redis Stream 기능이걸 사용하지는 않는다. 대신 kafka 를 자주 ..

Redis 2025.05.19

Redis 중요한 개념 정리(1)

1) Redis의 중요특징 RDB 는 디스크에 주로 저장이 되고 SQL 쿼리를 날리는 등 기본적으로 멀티 쓰레드를 지원을 한다. 그에 반해 Redis는 인메모리(REM) 기반의 기본적으로 메모리에 저장이 된다.key-value 값으로 관리가 이루어지는 Nosql 데이터 베이스이다. 주기적으로 스냅샷이 디스크에 저장이 된다. 그리고 싱글 쓰레드를 지원을 한다. 해시는 키를 암호화하는 것으로 암호화된 알고리즘을 통해 특정 동일값을 보장을 해 준다. 2) Redis에서의 자료형 String은 데이터를 String 를 value 형태로 저장이 된다. 가장 일반적인 key-value 값이 된다. List는 순서가 있는 목록이고 일반적으로는 삽입이 되면서 뒤로 미룰 수 있지만 여기서는 불가능하다. 앞 뒤 ..

Redis 2025.05.19

Elastic Cache 정상 작동 여부

Elastic Cache가 EC2 랑 잘 작동하는 지 알아 야 할 것은 같은 VPC 내에 있는가 포트 번호 (인바운드 규칙)을 좀 신경 써주면 좋을 꺼 같다. 기본 만 사용을 한다 . 기본 엔드 포인트에서 포트를 사용을 해 보거나 안 해보거나 좀 있다 다시 시도 ㄱㄱ( 접속이 안 된다.) EC2 (같은 VPC 내부에서 실행) # redis-cli -h {호스트 주소}$ redis-cli -h {ElastiCache의 기본 엔드포인트} [Redis] 레디스 CLI 접근 및 데이터 조회 [Redis] 레디스 CLI 접근 및 데이터 조회이번 시간에는 레디스 커멘드라인 인터페이스(redis-cli)에 접근법과 데이터 조회 방법을 소개한다. 레디스 CLI 접근(내부접속, 외부접속) 레디스 접속에는 `내부접..

Redis 2025.05.16

Elastic Cache 를 쓰는 이유

현업에서는 Redis + EC2 를 같이 쓰지 않고 AWS에서 제공하는 Elastic Cache를 사용을 한다. (부가적인 기능도 많고 좋다.) 1) ElasticCache 설치하는 방법 Redis OSS 를 이용 Redis OSS에서 클러스터 캐시를 이용을 한다. 천재 지변이 아닌 이상 다중 AZ - 나라가 전쟁이 나면 다른 리지온에서 가져올 수 있게 한다. 자동 장애 조치 - (클러스터안에 노드(캐시서버) 들이 있는데 부서지면 교체한다는 느낌이다.) 밑에 자동 장애 조치 이 부분만 쓰자 . 복제본 갯수당 돈이 과금이 되므로 0 으로 설치 해 주자 . EC2 내에서 보안 그룹을 설정 해 주는 것이다 . 6379 번에 대해서 포트를 열어 주는 것이다. 6379번 포트로 대해 모든 IP가..

Redis 2025.05.16

백엔드 서버에 대한 부하 테스트(k6)

서비스를 배포하기 전에 내가 작업한 서비스는 어느 정도의 요청을 처리할 수 있을까? 서비스가 1초당 처리할 수 있는 작업양 -> 처리량 1초당 처리 가능한 작업량 ->TPS( Transaction Per Seconds )1초당 100개의 api 요청을 처리한다면 100TPS라고 한다. k6도 높은 정확도와 고부하를 발생시킬 수 있는 부하테스트 툴이다. k6를 설치해보자. 현업에서도 많이 쓰니까 걱정하지 말고 사용해도 된다. 윈도우의 경우 k6 공식 사이트에서는 샘플 스크립트를 제공한다. 파일을 저장할 때는 .js 확장자로 저장해야 해요 . 예를 들어, 저는 C 드라이브에 'k6 test'라는 폴더를 만들고 , 그 안에 'script.js'라는 이름으로 저장했어요 . 파일 이름을 입력할 때, .tx..

Redis 2025.05.16

Redis 를 EC2 내부에서 설치할 경우

1) 레디스(캐시 서버)에 정보가 있으면 정보를 가져오고 없으면 RDS 에서 정보를 가져온 다음 redis에 저장한다. ( 현업에서는 Elastic Cache를 쓰지만 취준이나 스타트업에서 사용을 한다.) $ sudo apt update$ sudo apt install redis EC2 인스턴스를 생성할 때 t3a.small 이상으로 생성할 것을 권장한다.Redis 를 내부적으로 설치한 경우 $ redis-cli127.0.0.1:6379> pingPONG EC2에 SpringBoot 설치하기 $ sudo apt install openjdk-17-jdk $ java -version 기본적인 Redis 세팅 # local 환경spring: profiles: default: local dat..

Redis 2025.05.16

Redis 를 EC2 내부에서 설치하고 RDS랑 같이 돌림

1) 레디스(캐시 서버)에 정보가 있으면 정보를 가져오고 없으면 RDS 에서 정보를 가져온 다음 redis에 저장한다. ( 현업에서는 Elastic Cache를 쓰지만 취준이나 스타트업에서 사용을 한다.) $ sudo apt update$ sudo apt install redis EC2 인스턴스를 생성할 때 t3a.small 이상으로 생성할 것을 권장한다.Redis 를 내부적으로 설치한 경우 $ redis-cli127.0.0.1:6379> pingPONG EC2에 SpringBoot 설치하기 $ sudo apt install openjdk-17-jdk $ java -version 기본적인 Redis 세팅 # local 환경spring: profiles: default: local dat..

Redis 2025.05.16
반응형