- 최종 사용자와 데이터 원천 사이의 물리적, 시간적 거리는 굉장히 멀다.
- 캐시(Cache)는 최종 사용자와 데이터 원천 사이 어딘가에 위치해서 데이터 조회 시간을 줄여주는 모든 메커니즘을 통칭한다.
- 인터넷/웹 기준에서 캐시는 크게 브라우저 캐시, 서버 캐시로 나눌 수 있다.
- 브라우저 캐시와 서버 캐시는 대부분 함께 사용된다.
- 브라우저 캐시 내용의 만기가 남아 있더라도 서버 캐시를 체크해서 변경돼 있으면 브라우저 캐시를 갱신한다.
- 브라우저 캐시 내용이 만료되면 서버 캐시에서 먼저 가져오고, 서버 캐시에 없거나 만료돼 있으면 마지막으로 데이터 원천에서 가져온다.
- CDN은 서버 캐시의 일종이다.
- CDN이 Redis, memcached 등 다른 서버 캐시와 차별되는 점은 다음과 같다.
- 전 지구에 걸쳐 지리적으로 분산돼 있다.
- 전송되는 데이터 압축 최적화를 지원한다.
- TLS 최적화를 지원한다.
- Reverse Proxy로서 DDoS도 방지한다.