일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 티스토리챌린지
- sqs
- 자격증
- s3
- codedeploy
- aws
- DynamoDB
- nosql
- CICD
- rds
- Docker
- Redis
- data
- Spring Boot
- 오블완
- orm
- QueryDSL
- jpa
- mapping
- backenddeveloper
- serverless
- bootcamp
- goorm
- goorm x kakao
- MSA
- 스터디
- 개발자
- spring
- codebuild
- CodeCommit
- Today
- Total
목록DBMS (4)
gony-dev 님의 블로그

2024.12.06 - [DBMS] - [Redis] Connection Mode-1이전 글에서 Connection Mode의 다음 모드들을 알아보았다.1. Redis Standalone(default)2. Master/Slave3. Redis Sentinel이번 포스트에서는 미처 다루지 못한 Redis Cluster를 알아보고,모드들의 조합들이 어떤 이점을 취하는지 알아보자! 1. Redis ClusterRedis Cluster는 RedisConnection의 확장이라고 생각하면 된다.대규모 데이터 처리를 위한 "수평적 확장"을 사용하며, 데이터를 여러 노드에 분산 저장하는 역할을 한다.노드 간 자동 복제를 통해 데이터 안정성을 유지시키고, 일부 노드 장애 시에도 데이터 접근이 가능하다.이전 포스트에서..

Redis는 통상적으로 4가지의 모드가 존재한다.1. Redis Standalone(default)2. Master/Slave3. Redis Sentinel4. Redis Cluster각각의 모드는 뚜렷한 특징을 띄며, 모드를 조합하여 시스템의 요구사항을 만족시킬 수 있다.1. Redis Standalone우리가 흔히 프로젝트를 할 때 사용하는 모드로, 하나의 redis 서버만을 다룬다.@Beanpublic LettuceConnectionFactory redisConnectionFactory() { RedisStandaloneConfiguration config = new RedisStandaloneConfiguration(); return new LettuceConnectionFactory(..

대기열 처리를 공부하다가 Redis를 이용한 해결 방안을 공부했다.그런데 이 대기열을 어떤 방식으로 진행할지를 고민하다가 Spring batch와 Scheduler를 발견하고,이를 자세히 알아보기로 했다. 1. Spring batch우선 스프링 배치의 '배치'는 사용자와 상호작용 없이 여러 개의 작업을 미리 정해진 순서대로 중단 없이 처리하는 과정을 뜻한다.그리고 스프링 배치는 대용량 요청을 일괄처리하기 위해 설계된 가벼운 배치 프레임워크이다.Spring의 특정을 가져와 DI, AOP, 서비스 추상화 등 Spring framework의 구성 요소들을 고대로 사용할 수 있다.Spring batch의 기능에는 로그 추적, 트랜잭션, 작업 재시작 및 건너뛰기, 리소스 관리 등 대용량 레코드 처리에 필요한 것들..

트랜잭션이란 나누어지지 않는 최소한의 단위로 만들어 All or Nothing 전략으로 취할 수 있도록 하는 단위이다.트랜잭션으로 묶을 시 내부에서 하나의 로직이 실패하면 모두 취소시키며 그렇지 않으면 모두 성공시키게 된다.Redis는 Key/Value 형태의 NoSQL이다. 인메모리로 이루어져 있기에 캐시의 형태로 많이 사용한다.Redis Transaction1. Redis 트랜잭션 사용방법트랜잭션을 유지하기 위해서는 순차성을 지녀야 하며 도중에 명령어가 개입할 수 없도록 "Lock"을 걸어주어야 한다.Redis에서는 "MULTI", "EXEC", "DISCARD", "WATCH" 명령어들을 사용한다.각 명령어는 아래와 같은 작업을 진행한다.MULTIRedis 트랜잭션을 시작하는 커맨드이다.트랜잭션 시..