
배경사용자가 인증을 완료하면 서버는 Access 토큰과 Refresh 토큰을 발급한다. 이후 사용자가 로그아웃하면, 해당 토큰을 Blacklist에 등록하게 된다. 이후 사용자가 토큰을 포함해 서버에 요청을 보낼 경우, 서버는 해당 토큰이 유효한지 검증하고 동시에 Blacklist에 등록된 토큰인지도 확인하게 된다. 이러한 흐름에서 토큰의 Blacklist를 Redis와 같은 in-memory DB에서 관리해도 괜찮을지에 대한 의문이 들었고, 이에 대한 고민과 실험 내용을 정리해보았다. 본문Redis는 휘발성이다?Redis is the world’s fastest in-memory database.. (Redis 공식 문서) Redis 공식 문서에서도 알 수 있듯이 Redis는 메모리에 데이터를 ..

Swap memory란?시스템의 물리적 메모리(RAM)가 부족할 때 하드 디스크나 SSD의 일부를 마치 메모리처럼 사용할 수 있도록 지정한 가상 메모리 영역을 말한다. [장점]메모리가 부족한 상항에서 시스템 안정성을 높여준다. [단점]디스크 속도가 RAM보다 느릴 수 있기 때문에 스왑 메모리를 사용하면 데이터 접근 속도가 느려질 수 있다. 스왑 메모리 설정 (4GB)sudo dd if=/dev/zero of=/swapfile bs=128M count=32sudo chmod 600 /swapfilesudo mkswap /swapfilesudo swapon /swapfilesudo vi /etc/fstab# 아래 내용 추가 후 저장/swapfile swap swap defaults 0 0 free // 해..

배경운영 환경을 구축하는 과정에서 스프링 서버, MySQL 서버를 각각 VM으로 구축했다.그리고 스프링 서버를 띄워봤는데 아래와 같이 MySQL에 연결이 안 되는 오류가 발생했다.그리고 이를 해결하는 과정에 대해서 정리해봤다. 분석[로컬 접속 확인]우선 스프링 서버를 도커에 띄웠기 때문에 도커의 보안 설정 때문인지 확인하기 위해서 로컬에서 MySQL에 접속해 봤다.하지만 로컬에서도 위와 같이 접속이 불가능했다.따라서 도커 설정 문제가 아니라는 것을 인지했고 MySQL 설정에 관한 문제일 것이라 짐작했다. [MySQL 설정 확인]MySQL 설정 시 mysqld 설정 파일에서 접속 가능한 ip를 정의해 줄 수 있다.그래서 아래 명령어로 Bind Address를 확인해 봤다.sudo vim /etc/my..

배경무중단 배포 스크립트를 아래와 같이 작성했다.#!/bin/bashIS_BLUE=$(docker compose ps | grep atcha-blue)DEFAULT_CONF=" data/nginx/nginx.conf"MAX_RETRIES=30check_service() { local RETRIES=0 local SERVICE_NAME=$1 local container_ids=($(docker compose ps -q $SERVICE_NAME)) ...그리고 위 스크립트를 sh ./deploy.sh 로 실행하면 다음과 같은 에러가 나왔다.Syntax error: "(" unexpected (expecting "}")문법적 오류라고 나오는데 분명히 다른 환경에서는 문제없이 작동했었는데 내 우분투 환경..
- Total
- Today
- Yesterday
- contextwith
- 우테코
- 토큰 블랙리스트
- 환경변수 관리
- setnx
- 6기
- 우아한테크코스 6기
- 파이썬
- 코루틴
- 스왑 메모리 장단점
- gcp 인바운드
- 스프링 api 테스트
- Assertions
- 알고리즘
- 토큰
- 게임개발
- 우아한테크코스 자소서
- JWT
- 우아한테크코스 후기
- sh 문법 오류
- 우테코 프리코스
- 우테코 준비
- redis 메모리 사용량
- 우아한테크코스
- 자바
- redis
- 우테코 6기
- 레디스 분산락
- 스왑 메모리 설정
- 레디스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |