Redis와 Redis 관련 정보를 다음 url에서 발췌해서 적는다
https://gist.github.com/JonCole/925630df72be1351b21440625ff2671f#file-redis-bestpractices-java-jedis-md
Jedis는 Single 스레드이다
- 멀티스레드 환경에서 절대로 동일한 Jedis Connection instance를 같은 시간에 사용하지 말아라
- 만약에 동시 접근을 하게 된다면 "expected '$' but got'" 과같은 오류 메시지를 확인 할 것이다.
JedisPool을 사용해라
- 멀티스레드 환경에서 connections을 재활용 할 수 있게 해준다
- JedisPool Object는 thread-safe하게 작성되었다
- Pool은 단 한번만 설정하고 재활용 되어야 한다
- Jedis instance는 사용후 반듯이 pool로 돌아가야 한다.
- 컨넥션 에러가 30초 이상 발생할 경우 jedisPool을 새로 생성하는게 좋다.
Setting |
Description |
connectTimeout |
|
soTimeout |
|
port |
|
JedisPoolConfig settings
Setting |
Description |
maxTotal |
|
maxIdle |
|
minIdle |
|
blockWenExhausted |
|
maxWaitMillis |
|
TestOnBorrow |
|
minEvictableIdleTimeMillis |
|