반응형

1. Redis

Redis는 REmote DIctionary System의 약자로, In Memory 방식의 Key-Value 형식을 가지고 있는 비정형 데이터 구조이다. Redis는 저장한 데이터를 메모리에 저장하고 조회하기 때문에, 빠른 데이터 조회가 장점 중 하나가 된다. 거기에, memcached와의 차이점은 다양한 자료 구조를 제공하는 것에 있다.

 

2. Redis의 자료 구조

Redis는 Key - Value 형태로 되어 있고, 이 Value에 대한 자료구조가 memcached보다 다양하다. Redis의 자료 구조는 String, Set, Sorted Set, Hash, List를 지원한다.

 

3. Redis의 장점

1) 처리 속도가 빠르다.

- In Memory 방식으로 데이터를 메모리에 저장하고 조회하기 때문에 빠르다.

 

2) 메모리 저장소 재사용성

- 메모리 저장소가 가득 차게 된다면, LRU(Least Recently Used) 알고리즘에 의해 최근에 가장 적게 사용된 것들을 지우고 거기에 저장이 된다.

 

4. Redis의 단점

1) 싱글 쓰레드 구성

- Redis는 싱글 쓰레드로 구성되어 있기 때문에, 1번에 1개의 작업 만을 수행한다.

- 그렇기에, Redis를 사용할 때 모든 데이터 조회나 모든 데이터 삭제를 할 때 사용을 조심해야 한다.


[스프링/Spring] 스프링(Spring) Redis 구축하는 방법

 

먼저, Local에서 Redis를 사용하려면 설치를 해야 한다. Windows 10에서 Redis 설치는 따로 글을 올리겠다. 여기서는 Redis가 설치되어 있다는 가정 하에 진행한다.

 

1. pom.xml에 dependency 추가하기

- 추가 후, [프로젝트 오른쪽 클릭] - [Maven] - [Update Project] 로 Maven Update 하기.

</dependencies>
	<dependency>
  		<groupId>redis.clients</groupId>
  		<artifactId>jedis</artifactId>
  		<version>2.9.0</version>
		<scope>system</scope>
		<systemPath>${webapp.lib}/jedis-2.9.0.jar</systemPath>
	</dependency>
</dependencies>

 

2. 아래와 같이, 라이브러리를 import 하여 넣으면 된다.

- 맨 처음, 세션이 만들어 질 때, Redis에 넣을 때 아래와 같이 하면 된다.

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

Jedis jedis = new Jedis("127.0.0.1", 7777); // IP, PORT
jedis.auth(CommonConfig.REDIS_PSWD); // 비밀번호

jedis.set(Main Key, Value-Key, Value);
jedis.set(Key, Value);

 

jedis의 set은 Main Key를 위에 두고, 그 아래에 다시 Key - Value 형태로 받을 수 있고, 일반적인 형태의 Key - Value 형태로도 받을 수 있다.

 


반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기