일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Analyzer
- NORI
- JPA
- API
- 아이온큐
- Query
- java
- Cache
- KNN
- Docker
- 테슬라
- elasticsearch cache
- 양자컴퓨터
- vavr
- file download
- ann
- Elasticsearch
- aqqle
- aggs
- mysql
- Aggregation
- dbeaver
- IONQ
- request cache
- redis
- Elastic
- api cache
- TSLA
- java crawler
- Selenium
- Today
- Total
아빠는 개발자
[Redis] Count 와 Hash (INCR,DECR, HSET, HGET) 본문
개발환경
- MacOs
- docker
설치
- docker-compose.yml
# 파일 규격 버전
version: "3.1"
# 실행하려는 컨테이너들 정의
services:
# 서비스명
redis_container:
# 사용할 이미지
image: redis:latest
# 컨테이너명
container_name: redis
# 접근 포트 설정(컨테이너 외부:컨테이너 내부)
ports:
- 6379:6379
# 스토리지 마운트(볼륨) 설정
volumes:
- ./redis/data:/data
- ./redis/conf/redis.conf:/usr/local/conf/redis.conf
# 컨테이너에 docker label을 이용해서 메타데이터 추가
labels:
- "name=redis"
- "mode=standalone"
# 컨테이너 종료시 재시작 여부 설정
restart: always
command: redis-server /usr/local/conf/redis.conf
실행
docker compose up -d --build
접속
redis-cli 까지 접속해보자
(base) ➜ ~ docker exec -it redis /bin/bash 컨테이너 접속
root@eec19f53dc2e:/data# redis-cli
127.0.0.1:6379>
127.0.0.1:6379> keys *
(empty array)
아래처럼 해도 됨
컨테이너 IP 주소 찾기
(base) ➜ ~ docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' redis
172.19.0.2
접속
redis-cli -h <컨테이너 IP 주소>
테스트
카운트 증가
172.19.0.2:6379> INCR doocount.
카운트 감소
172.19.0.2:6379> DECR doocount
키 전체 삭제
- FLUSHDB (현재 선택된 데이터베이스의 모든 키를 삭제)
- FLUSHALL (인스턴스에 있는 모든 데이터베이스의 모든 키를 삭제)
172.19.0.2:6379> flushall
OK
HSET은 Redis에서 해시 데이터 구조를 사용하여 필드와 값 쌍을 설정하는 명령어입니다. 해시는 필드와 값의 매핑을 저장하는 데이터 구조로, 특히 여러 속성을 가진 객체를 표현할 때 유용합니다.
user:123 에 name 과 email 을 등록 하고
172.19.0.2:6379> HSET user:123 name "John Doe"
(integer) 1
172.19.0.2:6379> HSET user:123 email "john@example.com"
(integer) 1
키를 확인하면 user:123 키가 생성된 것 을 확인 할 수 있다.
172.19.0.2:6379> keys *
1) "user:123"
내용을 확인해야 하는데 key 와 arguments 를 같이 입력해야 한다.
(error) ERR wrong number of arguments for 'hget' command
172.19.0.2:6379> HGET user:123 name
"John Doe"
HGET 으로 user:123의 name 을 확인
'Redis' 카테고리의 다른 글
[java] Redis @Cacheable condition, unless (0) | 2024.06.06 |
---|---|
IntelliJ IDEA redis 연결 (0) | 2024.06.03 |
[Redis] Redis Queue 설계하기 (0) | 2024.05.17 |
[Redis] Redis cache 설계 - 이론편 (0) | 2024.05.17 |
[Redis] 만료 시간 설정하기 Expire time (redis-cli) (0) | 2024.05.17 |