티스토리 뷰
반응형
LLM 서비스를 개발하다 보니 토큰 비용 문제로 캐시 서버를 운영해야하는 상황이 생겼다.
사용자의 질의를 캐싱하는 기능이 있는데 Redis는 인메모리 DB 이므로 메모리를 많이 사용한다. 따라서 계속 메모리를 잡아먹기 때문에 주기적으로 지울 필요성이 있다고 생각했다.
redis.conf 파일 다운 주소 : https://redis.io/topics/config
conf 파일에 대한 설정은 다음의 블로그에 아주 친절하게 설명되어 있다. https://blog.naver.com/eastee/220081013385
docker-compose.yml
version: '3.8'
services:
redis:
image: redis:7.2.4
container_name: redis
env_file:
- .env.dev
ports:
- ${CONF_REDIS_BINDING_PORT}:${CONF_REDIS_PORT}
command: redis-server /usr/local/conf/redis.conf
volumes:
- ./redis/data:/data
- ./redis/conf/redis.conf:/usr/local/conf/redis.conf
개발, 운영 간의 환경 변수를 나누기 위해 .env.dev 파일을 만들었다. 그리고 redis 구동시 redis.conf를 사용하는 방법은
command 다음에 오는 redis-server /usr/local/conf/redis.conf 명령어로 실행해주면 된다.
redis.conf
redis.conf는 정말 많은 옵션이 포함되어 있는데 기본적인 것만 사용하였다.
bind 0.0.0.0
port 6379
tcp-backlog 511
tcp-keepalive 300
loglevel notice
pidfile /tmp/redis_6379.pid
dbfilename dump.rdb
dir /redis/data
daemonize no
maxmemory 2000000000
maxmemory-policy volatile-lru
스냅샷을 저장하는 db는 /redis/data에 저장을하고 메모리 2G 제한을 두었다. 키 값의 TTL을 설정하였고 요청이 많아 2G 이상 사용하게 되면 lru 규칙에 따라 키를 삭제 하도록 설정했다.
반응형
'DevOps > DB' 카테고리의 다른 글
벡터 DB 비교 (0) | 2024.02.21 |
---|---|
[mongoDB] 중복된 document 제거 (0) | 2023.02.23 |
스칼라쿼리 원리 (0) | 2021.02.06 |
[MySQL] show index from 테이블 해석 (0) | 2021.01.22 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- java
- t-test
- 시간초과
- springboot
- 파이썬
- 리눅스
- 보안기사
- 백준
- 우선순위큐
- Python
- linux
- 정보보안기사
- 카카오페이
- lightsail
- 보안
- 프로그래머스
- synflooding
- 코딩테스트
- 다이나믹프로그래밍
- 자료구조
- t검정
- FastAPI
- 카카오페이면접후기
- llm
- 딥러닝
- 정보보안
- 분산시스템
- 그리디
- LangChain
- Ai
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함