주식자동매매프로젝트

3. Redis로 실시간 데이터 확인 빠르게 하기

들쮜 2023. 10. 31. 21:39

1. Redis 설치

 

https://github.com/tporadowski/redis/releases

 

Releases · tporadowski/redis

Native port of Redis for Windows. Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Se...

github.com

 

이곳에 들어가 Redis를 설치해주었습니다. msi 파일을 설치해주고 port번호를 6379로 설정해줍니다.

 

그 후 Build.gradle에서 의존성을 넣어주면 스프링 부트에서 redis를 사용할 수 있게 됩니다

 

2. redisTemplate으로 redis 사용하기

 

RedisTemplate Bean을 주입받아 바로 사용해보도록 하겠습니다.

 

redisTemplate의 opsForValue 메서드를 이용하여 set과 get을 할 수 있고, 여러개의 key 패턴을 넣을 수도 있습니다.

 

사용자가 저장해둔 DB의 값을 계속적으로 확인하기 위해 RDBMS에 계속 접근하는 것은 굉장히 불편한 일이라고 생각이 들었습니다.

 

실시간으로 데이터가 날라올 때마다 DB에 접근을 한다면 CP 문제가 생길 것입니다.

 

Redis를 이용해 캐시 메모리에 저장을 해두고, DB에 접근할 필요 없이 실시간으로 데이터를 체크해 줄 수 있게 됐습니다.

 

만약 사용자가 저장해둔 DB값에 변화가 발생한다면 Redis를 업데이트 시켜주고, 그 외에는 기존에 있던 Redis를 사용한다면 꽤 그럴듯한 자동 시스템이 만들어질 것 같습니다