
좌측의 사진은 CDN에 대해 정말 잘 설명되어 있는 사진인 것 같다.
EL 과 REC두가지에 대한 특징을 보고자 한다.
EL은 하나의 캐시 서버 혹은 지점이라고 생각을 하면 된다.
만약 사용자가 원하는 데이터가 EL에 캐싱이 되어 있으면, origin 까지 갈 필요도 없이 바르게 해당 데이터를 가져올 수 있다.
그 다음에 볼 REC는 EL과 비슷한 개념이라고 생각을 하면 된다.
다만 EL에 들어갈 데이터 보다는 인기가 있지는 않지만, 더 오래 남고 더 용량이 큰 캐시 서버라고 생각을 하면 된다.
CDN 동작 순서
- 사용자가 어플리케이션에 요청을 한다.
- DNS는 사용자에게 적합한 Edge Location으로 라우팅 한다.
- Edge Location에서 캐시를 확인하고 있으면 이것을 사용자에게 반환한다.
- 없으면 가장 가까운 REC로 캐시가 있는지 요청한다.
- 없으면 CloudFront는 오리진으로 요청을 전달한다.
- 오리진은 '오리진 > REC > Edge Location > CloudFront가 사용자에게 전달' 수순을 밟는다. (캐시도 추가된다)
- REC에 캐시가 있다면 REC는 콘텐츠를 요청한 Edge Location으로 반환한다.
- REC로부터 콘텐츠의 첫 번째 바이트가 도착하는 즉시 Edge Location은 이를 사용자에게 반환한다.
- Edge Location은 나중을 위해 이 콘텐츠 캐시를 저장한다.
CDN의 동적 정적 처리

정적 데이터 -S3
동적 데이터 -EC2