- 사용자 수에 따른 규모 확장성 32022년 07월 22일
- starryeye
- 작성자
- 2022.07.22.:09
캐시
캐시는 값비싼 연산 결과 또는 자주 참조되는 데이터를 메모리 안에 두고,
뒤이은 요청이 보다 빨리 처리 될 수 있도록 하는 저장소이다.
(DB 호출되는 양을 줄이면 어플리케이션의 성능이 좋아진다는 개념에서 출발)
장점
- DB 부하 줄이기
- 캐시 규모를 독립적으로 조절 가능
- DB 접근하는 횟수를 줄여서 성능 향상
주의사항
- 휘발성 메모리이므로 영속 보관 데이터는 DB에 꼭 저장해줘야 한다.
- 만료 정책
- 적절한 만료 정책을 세워야한다.
- 만료 기한이 너무 길다면.. DB와 차이가 많이 날 것이다.
- 만료 기한이 너무 짧다면.. DB를 읽는 횟수가 늘어난다.
- 일관성
- DB와 캐시의 데이터가 동일 한지에 대한 문제이다.
- 단일 트랜잭션으로 처리 되지 않는다면.. 일관성이 깨진다.
- 장애 대응
- 캐시 서버를 여러 대로 분산 해놓아야 .. SPOF를 예방 할 수 있다.
- 캐시 메모리..
- 메모리가 작다면.. 데이터가 자주 밀려나버려 DB 접근 횟수가 늘어나 캐싱 의미가 사라짐
- 메모리 내의 데이터 방출
- LRU(오래된 데이터 방출)
- LFU(사용 빈도가 낮은 데이터 방출)
- FIFO
CDN
CDN은 아래 포스팅에서 설명함.
https://starryeye.tistory.com/61?category=1111818
정적 컨텐츠는 CDN을 통해 더 나은 성능을 보장
캐시는 DB의 부하를 줄여줌
'대규모 시스템 설계' 카테고리의 다른 글
안정 해시 설계 1 (0) 2022.09.03 사용자 수에 따른 규모 확장성 5 (0) 2022.07.23 사용자 수에 따른 규모 확장성 4 (0) 2022.07.23 사용자 수에 따른 규모 확장성 2 (0) 2022.07.22 사용자 수에 따른 규모 확장성 1 (0) 2022.07.21 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)