Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
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
Tags
more
Archives
Today
Total
관리 메뉴

Skipalong's tistory

240205 TIL - Cache 본문

TIL

240205 TIL - Cache

Skipalong 2024. 2. 6. 01:01

이번 프로젝트 마무리 단계에서 마지막으로 자주 사용되는 데이터를 불러오는 작업을 효율적으로 하기 위해 Cache를 사용하기로 했다.

캐시를 적용한 내용을 정리하기 전에 우선 캐싱 전략에 대해 정리해보겠다. 

 

우선 캐싱 전략에는 크게 로컬캐싱과 글로벌 캐싱이 있다.

- 로컬 캐싱은 서버 내부 저장소에 캐시 데이터를 저장하는 것이다. 따라서, 속도는 빠르지만 서버 간의 데이터 공유가 안된다는 단점이 있다. 예를 들어, 사용자가 같은 리소스에 대한 요청을 반복해서 보내더라도 A 서버에서는 이전 데이터를, B 서버에서는 최신 데이터를 반환하여 각 캐시가 서로 다른 상태를 가질 수도 있다. 즉, 일관성 문제가 발생할 수 있다는 것이다.

 

- 글로벌 캐싱은 서버 내부 저장소가 아닌 별도의 캐시 서버를 두어 각 서버에서 캐시 서버를 참조하는 것이다. 캐시 데이터를 얻으려 할 때마다 캐시 서버로의 네트워크 트래픽이 발생하기 때문에 로컬 캐싱보다 속도는 느리다. 하지만 서버 간에 캐시 데이터를 쉽게 공유할 수 있기 때문에 위에서 언급한 로컬 캐싱의 문제를 해결할 수 있다. 현재 프로젝트에서 이메일 인증코드값을 저장하는 저장소로 Redis를 사용하고 있고 로컬캐싱의 문제를 해결할 수 있는 글로벌캐싱전략을 사용하기로 했다. 

 

그리고 세부적인 캐싱전략에 대해 알아보겠다.

Look-Aside
Read Through
Write Through
Write Back
Write Around

이렇게 캐싱에는 다양한 전략이 있다. 상황에 맞게 알맞은 캐싱전략을 사용한다면 매우 효율적일 것 같다.

 

참고블로그:https://yoongrammer.tistory.com/101

'TIL' 카테고리의 다른 글

240207 TIL - Cache  (0) 2024.02.08
240206 TIL - Cache  (1) 2024.02.07
240202 TIL- JWT, AccessToken, RefreshToken  (0) 2024.02.03
240201 TIL - JMeter, nGrinder  (0) 2024.02.02
240131 TIL - RestDocs 적용  (0) 2024.02.01