일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 맛집
- AWS
- MySQL
- IntelliJ
- Spring Boot
- elasticsearch
- Gradle
- ReactJS
- it
- Spring Batch
- ubuntu
- java
- tool
- jenkins
- devops
- redis
- Git
- JVM
- php
- Design Patterns
- 요리
- Web Server
- db
- javascript
- jsp
- linux
- springboot
- Oracle
- Spring
- laravel
- Today
- Total
목록Data Store/Redis (10)
아무거나
Redis 관련 내용 정리대표적인 구조Look Aside Cache (보편적으로 사용)Client -> Application -> Cache 에 데이터가 있으면 Cache 에서 가져옴 만약 없으면 DB 에서 데이터를 읽어오고 해당 데이터를 Cache 에 저장Write BackClient -> Application -> Cache 에 먼저 데이터를 저장하고 특정 시점마다 DB 에 저장이렇게 하면 DB 에 저장될 때 건별로 Insert 쿼리를 날리는 것 보다 한 번에 쿼리를 날리다보니 성능에 용이사용사례여러 서버들이 데이터를 공유할 때인증 토큰 등을 저장Ranking(Sorted Set)APIQueueRedis CollectionsStrings단일 KeyGET SET 멀티 KeyMSET ....MG..
Cache 적용 패턴 및 관리 전략 읽기 캐시 전략 Cache-Aside 캐시는 데이터베이스와 직접 연결되지 않고, 애플리케이션이 주체가 되며 보편적으로 많이 사용되는 캐시 전략, 읽기 요청에 적합 방식 (1) 캐시에 데이터가 존재하는지 확인 (2) 데이터가 존재하면 캐시 데이터 반환 (3) 데이터가 존재하지 않으면 애플리케이션에서 DB 에 데이터 요청 후 캐시에 저장하고 데이터를 반환 Read-Through 애플리케이션이 캐시를 직접 바라본다. 즉, 캐시가 주 데이터스토어로 인식되며 데이터베이스로 동기화하는 몫은 캐시에 위임, 읽기 요청에 적합 최초 호출 시 캐시에 데이터가 없으므로 첫 요청시 캐시가 갱신되게 대응 (Ex: Cache Warm up 스케쥴 작업 등..) 방식 (1) 캐시에 데이터 요청 ..
set Key와 Value를 입력 ex) set key "value" mset 여러개의 key와 value를 한번에 입력한다. ex) set key1 "value1" key2 "value2" setex key와 value, Expries(sec)설정을 입력한다. (입력된 시간이후에 소멸한다.) ex) setex key "value" 3 get key에 해당하는 value를 가져온다 mget 여러개의 key값을 입력하여 value를 동시에 리턴받는다. ex) mget key1 key2 key3 incr integer 데이터에 한해서 숫자를 1씩 증가시킨다. rpush List에 오른쪽으로 데이터를 추가시킨다. ex) rpush Key "value" lrange List의 지정한 범위 내의 값을 리턴한다...
Redis 서버 설정을 위해서 작성하는 redis.conf 파일에 대해서 정리한다. 대상 파일: https://raw.github.com/antirez/redis/2.4.15/redis.conf 요약 기본설정 daemonize (daemon으로 실행 여부 설정) pidfile (daemon 실행시 pid가 저장될 파일 경로) port (접근을 허용할 port 설정) bind (요청을 대기할 interface[랜카드] 설정) unixsocket, unixsocketperm (요청을 대기할 unix 소켓 설정) timeout (client와 connection을 끓을 idle 시간 설정) loglevel (loglevel 설정) logfile (log 파일 경로 설정) syslog-enabled (syste..
Redis 서버 설정을 위해서 작성하는 redis.conf 파일에 대해서 정리한다. 대상 파일: https://raw.github.com/antirez/redis/2.4.15/redis.conf 요약 기본설정 daemonize (daemon으로 실행 여부 설정) pidfile (daemon 실행시 pid가 저장될 파일 경로) port (접근을 허용할 port 설정) bind (요청을 대기할 interface[랜카드] 설정) unixsocket, unixsocketperm (요청을 대기할 unix 소켓 설정) timeout (client와 connection을 끓을 idle 시간 설정) loglevel (loglevel 설정) logfile (log 파일 경로 설정) syslog-enabled (syste..
set Key와 Value를 입력 ex) set key "value" mset 여러개의 key와 value를 한번에 입력한다. ex) set key1 "value1" key2 "value2" setex key와 value, Expries(sec)설정을 입력한다. (입력된 시간이후에 소멸한다.) ex) setex key "value" 3 get key에 해당하는 value를 가져온다 mget 여러개의 key값을 입력하여 value를 동시에 리턴받는다. ex) mget key1 key2 key3 incr integer 데이터에 한해서 숫자를 1씩 증가시킨다. rpush List에 오른쪽으로 데이터를 추가시킨다. ex) rpush Key "value" lrange List의 지정한 범위 내의 값을 리턴한다...
- SELECT1 // db 선택 - FLUSHDB // 선택한 db의 모든 키 삭제
[멤캐시드(Memcached) 레디스(Redis) 사용] 1. 멤캐시드 : Redis 는 최근에 나왔고 새로운 기능들에 있어 Memcached와 비교된다. Memcached 보다 Redis 를 선택하는것이 항상 더 좋은 선택 이지만 Memcached 가 더 좋은 두가지의 상황이 있습니다. (1) 작고 변하지 않는 데이타 예를들어 HTML 코드의 부분을 캐싱할때 내부 메모리 관리가 Redis 만큼 복잡하지 않아 능률적이기 떄문에 Memcached 는 메타 데이타에 있어 비교적 작은 메모리를 사용합니다. Memcached 에서 지원하는 유일한 데이타 타입인 String은 오로지 읽기 전용이고 더 이상 처리가 필요 없기 때문에 데이터를 저장하기에 좋습니다. (2) Memcached 는 여전히 Redis 에 비..
sudo add-apt-repository -y ppa:rwky/redis // redis 설치 패키지를 repository에 추가 sudo apt-get update 만약 sudo add-apt-repository -y ppa:rwky/redis 단계에서 에러가 나면 sudo apt-get install python-software-properties을 먼저 설치 필요 sudo apt-get install redis-server // redis 설치 redis-server --version // redis 버전 확인
프로그램 : 푸시발송 서버(node)에서 레디스를 이용하는 부분스펙 : windows server 2012(aws), redis2.8.x, nodejs문제 : Redis config dir periodically modified to "/var/spool/cron" with "Failed opening .rdb for saving: Permission denied" error redis에서 퍼미션 관련 오류가 뜨는 경우가 있었다. ( redis.conf에서 dir : /var/spool/cron, dbfilename : root 로 변경되어 있었다. )그래서 CONFIG SET 명령어로 dir과 dbfilename을 디폴트값으로 변경해 주었다.그러나 하루가 지난다음에 위에 이슈대로 초기화되는 문제가 발생..