CDN은 실제로 데이터를 클라이언트에 덤프하거나 콘텐츠의 URL을 전달합니까?

CDN은 실제로 데이터를 클라이언트에 덤프하거나 콘텐츠의 URL을 전달합니까?

궁금합니다. 예를 들면 다음과 같습니다.

Facebook은 Akamai CDN의 클라이언트입니다.

그래서 이제 Facebook 페이지에 로그인하면 모든 콘텐츠(동영상, 이미지, 텍스트 등)가 표시되고 동영상을 클릭하여 볼 수 있습니다. 이제 Facebook은 콘텐츠를 얻기 위한 Akami의 클라이언트입니다.

그렇다면 Facebook에서 Akami로 요청이 오면 Akamai는 데이터 센터의 비디오/이미지를 (경험적 방법에 따라) 한동안 상주하는 Facebook의 데이터 센터에 덤프하고 일정 시간이 지나면 플러시합니까?

아니면 Akamai 서버에서 직접 해당 비디오를 시청(스트리밍)합니까?

업데이트 1

데이터는 CDN에 영구적으로(동의됨) 상주하지만 Facebook의 데이터 센터로 전송된 콘텐츠의 복사본이기도 합니다.

업데이트 2

좋아, Josh의 답변에 따르면 Akamai 아키텍처의 이 이미지는 "IMAGE"가 실제로 Akamai 서버에 저장되고 이미지 참조(URL)가 우리가 보는 Facebook HTML 페이지에 있다고 말할 수 있습니까?

여기에 이미지 설명을 입력하세요

답변1

Akamai의 구성은 고도로 구성 가능하지만 일반적으로 저장하려는 콘텐츠 유형과 기간(Akamai 네트워크 및 사용자 브라우저에서)을 정의할 수 있습니다. Akamai에는 다중 계층 시스템도 있으므로 사용자가 로컬 Akamai 서버에 요청하는 경우 콘텐츠가 없으면 상위 계층에서 요청합니다. 해당 상위 계층에 없는 경우 상위 계층은 상위 계층에서 이를 요청합니다. 그 후 Akamai 상위 계층은 원본에서 이를 요청합니다. 콘텐츠를 가져와서 사용자에게 전송하면 캐시(모든 계층에서)에 저장됩니다. 모든 후속 요청은 Akamai 네트워크에서 처리됩니다. 해당 콘텐츠가 다시 요청되지 않으면 결국 캐시에서 삭제됩니다. 사용량이 많은 Akamai 서버의 경우 사용량이 많지 않은 경우보다 사용하지 않는 콘텐츠가 더 빨리 제거됩니다.

저는 Akamai가 서버에 사용자 콘텐츠를 저장할 수 있는 능력이 있다고 믿지 않습니다. Akamai의 네트워크는 이를 위해 설계되지 않았습니다. Facebook에 이미지를 업로드하면 Facebook 서버에 업로드되는 것입니다. (Facebook에서 백서를 읽은 기억이 납니다.)사용자 정의 파일 시스템이미지 요청을 처리하기 위해).

일반 웹사이트에서 Akamai는 구성에 따라 원본 트래픽의 최대 95%를 차지할 수 있습니다. 이와 같은 경우에는 그다지 높지 않을 것이라고 생각하지만 어떤 비율이라도 도움이 될 것입니다.

처음에는 Akamai가 별로 도움이 되지 않을 것이라고 생각했습니다. 일반 사용자 프로필 요소에는 차이를 만들 만큼 충분히 액세스되지 않았습니다. 하지만 좀 더 생각해 보면, 귀하가 해당 지역에서 꽤 인기 있는 사용자라면 로컬 Akamai 서버에 사진을 캐시해 두는 것이 다른 사람들이 동일한 로컬 Akamai 서버를 통해 귀하의 FB 프로필에 액세스할 때 도움이 될 수 있습니다.

Akamai를 사용함으로써 얻을 수 있는 실질적인 이점은 유명인의 페이지나 기업 페이지 또는 Facebook 사이트의 정적 요소(css/js)에 있을 것입니다. 볼륨이 큰 것이라면 무엇이든

따라서 모든 점을 감안할 때 일반 사용자의 프로필을 Facebook에 업로드하면 Facebook 서버에 저장된다고 가정합니다. 귀하가 요청하면 Akamai는 Facebook의 원본 서버로 돌아가서 이를 가져와서 캐시에 저장합니다. 이웃이 파일을 보러 간다면 해당 파일은 (이상적으로는) 동일한 ISP에 있을 것이며 ISP에 있는 (이상적으로는) Akamai 캐시 서버에서 해당 파일을 가져올 것입니다.

말하자면 저는 Facebook의 Akamai 구성에 대해 아무것도 모르기 때문에 완전히 맞춤형이고 표준을 벗어난 구성을 가지고 있을 수 있습니다.

답변2

일반적으로 작동 방식은 모든 콘텐츠가 기본 서버(예: Facebook)에 저장되고 CDN 네트워크가 요청되는 데이터의 복사본을 캐시하는 것입니다. 따라서 Akamai에 요청하면 Akamai는 캐시가 없는 경우 Facebook에 요청하거나 캐시에서 제공합니다. 따라서 해당 데이터를 요청하는 다음 사람이 Akamai의 캐시에서 해당 데이터를 가져오므로 Facebook 서버의 부하가 줄어듭니다. 브라우저 캐시와 매우 비슷합니다.

보다Akamai에 대한 Wikipedia 기사, 구체적으로:

Akamai는 고객 서버의 콘텐츠(때로는 HTML, CSS, 소프트웨어 다운로드를 포함한 모든 사이트 콘텐츠, 때로는 오디오, 그래픽, 애니메이션, 비디오 등의 미디어 개체만)를 투명하게 미러링합니다. 도메인 이름(하위 도메인 제외)은 동일하지만 IP 주소는 고객 서버가 아닌 Akamai 서버를 가리킵니다.

저는 모든 미디어와 많은 콘텐츠 전달 서버를 포함하는 중앙 서버가 있는 "활성" CDN 네트워크를 생산하는 대규모 회사에서 근무했습니다. 미디어는 마스터 서버에 업로드되고 모든 슬레이브에 접속하여 새 콘텐츠를 푸시합니다. 그러나 이러한 종류의 CDN은 예를 들어 중앙 사무실과 여러 지점이 있는 경우 알려진 고대역폭 링크를 통해 콘텐츠를 제공하도록 설계되었습니다. 각 지점에는 빠른 이더넷 네트워크가 있으므로 CDN 서버는 (느린) 인터넷을 통해 중앙 서버와 동기화됩니다. 하지만 이는 Akamai와는 다른 개념입니다.

답변3

리소스는 클라이언트가 제거할 때까지 CDN의 저장소 내에 영구적으로 존재하며 브라우저에서 요청할 때 해당 저장소에서 검색됩니다.

관련 정보