As CDNs realmente despejam os dados para o cliente ou passam a URL do conteúdo?

As CDNs realmente despejam os dados para o cliente ou passam a URL do conteúdo?

Estou curioso, diga por exemplo:

O Facebook é cliente da Akamai CDN.

Então, agora quando eu entro na minha página do Facebook, vejo todo o conteúdo (vídeo, imagem, texto etc) e clico em um vídeo para visualizá-lo. Agora, o Facebook é o cliente da Akami para obter o conteúdo.

Então, quando uma solicitação é feita do Facebook para a Akami, a Akamai despeja o vídeo/imagem de seus data centers para os data centers do Facebook onde residem por um tempo (dependendo de sua heurística) e liberado depois de algum tempo?

Ou vejo esse vídeo (transmiti-lo) diretamente do servidor da Akamai?

ATUALIZAÇÃO1

Os dados residem permanentemente no CDN (acordado), mas também são uma cópia do conteúdo enviado aos data centers do Facebook

ATUALIZAÇÃO2

Ok, de acordo com a resposta de Josh, esta imagem da arquitetura da Akamai, posso dizer, "IMAGEM" está realmente armazenada no servidor da Akamai e a referência da imagem (a URL) está na página HTML do Facebook que vemos?

insira a descrição da imagem aqui

Responder1

A configuração da Akamai é altamente configurável, mas normalmente você pode definir que tipo de conteúdo deseja armazenar e por quanto tempo (na rede da Akamai e no navegador do usuário). A Akamai também possui um sistema multi-teir, de modo que se um usuário fizer uma solicitação de um servidor local da Akamai, se ele não tiver o conteúdo, ele o solicitará de uma camada pai. Se esse pai não tiver, a camada pai irá solicitá-lo à camada avó. Depois disso, o nível de avós da Akamai iria solicitá-lo à origem. Depois de extrair o conteúdo e enviá-lo ao usuário, ele o armazenará no cache (em todas as camadas). Quaisquer solicitações subsequentes serão tratadas pela rede Akamai. Se esse conteúdo não for solicitado novamente, ele será eventualmente eliminado do cache. Se for um servidor Akamai ocupado, o conteúdo não utilizado será eliminado mais rapidamente do que se não estiver tão ocupado.

Não acredito que a Akamai tenha a capacidade de armazenar conteúdo do usuário em seus servidores, sua rede não foi projetada para isso. Quando você envia uma imagem para o Facebook, você a envia para o servidor do Facebook (lembro-me de ter lido um white paper no Facebooksistema de arquivos personalizadopara lidar com solicitações de imagem).

Em um site normal, a Akamai pode retirar até 95% do tráfego da origem, dependendo da configuração. Em algo assim, não acho que seria tão alto, mas qualquer porcentagem ajudaria.

À primeira vista, eu presumiria que a Akamai não seria capaz de ajudar muito, pois os elementos normais do perfil de um usuário não são acessados ​​o suficiente para fazer a diferença. Mas pensando mais sobre isso, se você é um usuário bastante popular em sua área, ter suas fotos armazenadas em cache no servidor local da Akamai pode ajudar quando outras pessoas acessam seu perfil do FB através do mesmo servidor local da Akamai.

O benefício real de usar o Akamai estaria na página de uma celebridade, ou na página de uma empresa, ou apenas nos elementos estáticos (css/js) do site do Facebook. Qualquer coisa de alto volume

Então, considerando tudo isso, suponho que, para perfis de usuários normais, quando você os carrega no Facebook, eles são armazenados nos servidores do Facebook. Quando você os solicita, a Akamai volta aos servidores de origem do Facebook, extrai-os e os coloca no cache. Se o seu vizinho for procurá-los, eles estarão no mesmo ISP (idealmente) e os retirarão do servidor de cache Akamai que reside (idealmente) no seu ISP.

Dito isso, não sei nada sobre a configuração Akamai do Facebook, então eles podem ter algo completamente personalizado e fora do normal.

Responder2

Geralmente, a maneira como funciona é que todo o conteúdo é armazenado no servidor primário (Facebook, no seu exemplo), e a rede CDN armazena em cache uma cópia dos dados que estão sendo solicitados. Então você solicita isso à Akamai, que solicita ao Facebook se eles não o têm em cache, ou apenas o veicula a partir do cache. Assim, a próxima pessoa que solicitar esses dados os obterá do cache da Akamai, reduzindo a carga nos servidores do Facebook. Muito parecido com o cache do navegador.

Vero artigo da Wikipedia sobre Akamai, especificamente:

A Akamai espelha de forma transparente o conteúdo (às vezes todo o conteúdo do site, incluindo HTML, CSS e downloads de software, e às vezes apenas objetos de mídia, como áudio, gráficos, animação e vídeo) dos servidores dos clientes. Embora o nome de domínio (mas não o subdomínio) seja o mesmo, o endereço IP aponta para um servidor Akamai em vez do servidor do cliente

Trabalhei em uma grande empresa que produzia redes CDN "ativas", onde havia um servidor central contendo todas as mídias e muitos servidores de entrega de conteúdo. A mídia seria carregada no servidor mestre e entraria em contato com todos os escravos e enviaria o novo conteúdo para eles. Mas esse tipo de CDN foi projetado para servir conteúdo por meio de links de alta largura de banda conhecida – por exemplo, se você tiver um escritório central e muitas filiais. Cada filial possui uma rede Ethernet rápida, de modo que seus servidores CDN são sincronizados com o servidor central pela Internet (lenta). Mas este é um conceito diferente do Akamai.

Responder3

O recurso existe permanentemente (até que o cliente o remova) no armazenamento do CDN e é recuperado de lá quando solicitado por um navegador.

informação relacionada