
Redis Eviction 정책을 적용하여 효율적인 캐시 띄우기 Overview 저번 글에서 Redis를 캐시 저장소로 선택하고 Spring Cache를 도입하여 읽기 작업의 성능을 높인 것을 확인할 수 있었다. 그러나 성능을 높이는데 많은 역할을 하는 캐시라도 데이터를 제대로 관리하지 못하면 문제가 발생할 수 밖에 없다. 예를 들어, 내가 개발하고 있는 SNS 서비스를 많은 사람들이 이용한다고 가정했을 때, 짧은 시간 안에 Redis 서버에는 다양한 캐시 데이터들로 가득 차게 될 것이다. 이때 메모리 사용에 대한 어떠한 제한이 없다면 캐시 데이터가 메모리를 계속 차지하게 되므로 어플리케이션의 전체적인 성능까지도 영향을 끼칠 수 있다. 이러한 상황을 막기 위해 Redis에서는 다양한 Eviction 정책..

Spring Cache로 읽기 작업의 성능 향상시키기 Overview 현재 진행하고 있는 SNS 프로젝트에서 게시물 관련 기능을 개발하고 테스트를 하면서 서버에 동일한 요청을 여러 차례 보내게 되었다. 이 과정에서 동일한 결과를 얻기 위해 매번 데이터베이스와 연결하여 같은 연산을 수행하는 것이 비효율적이라고 생각했다. 저번 글에서 잠깐 언급한 것처럼 RDB에서는 연산을 처리할 때마다 디스크 I/O가 발생하기 때문이다. 버퍼로 디스크 I/O를 최소화하고 처리 능력을 강화해도 DB 연산 처리 시간 외에 디스크에서 데이터를 찾을 때 발생하는 대기 시간, 디스크에서 버퍼로의 데이터 전송 시간 등이 발생하기 때문에 방대한 I/O 작업을 처리하는 경우 결국 병목 현상이 생기게 된다. 또한, RDB는 데이터 정합성의..
- Total
- Today
- Yesterday
- Django 컬렉션
- 서점 어플리케이션
- 장고
- Django 팔로우
- Django Instagram
- Django 회원 정보 수정
- Django 좋아요
- MySQL
- 파이썬
- Redis
- Django
- java
- 북마크 어플리케이션
- Django 북마크
- Django 프로젝트 생성
- Django 인스타그램
- Django 비밀번호 수정
- Redis Cache
- python
- Django 로그인
- Django 회원가입
- Django 로그아웃
- Django 댓글
- Django 해시태그
- Django 업로드
- Django application
- Django User
- Django 검색
- Django 어플리케이션
- query parameter
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |