Os CDNs têm alguns benefícios além da distribuição geográfica:
- Domínios sem cookies: se o seu conteúdo estático estiver em um CDN, seus usuários não serão enviando cookies do seu site com o pedido para o arquivo estático, que será traduzir para solicitações e tempos de resposta mais rápidos para CSS, JS e imagens.
- Downloads paralelizados. Os navegadores geralmente baixam apenas dois itens por vez em cada hospedeiro. Ao enviar seu conteúdo para CDNs, o navegador abrirá mais concorrentes downloads para cada nome de host que você tem agora.
- Velocidade. As CDNs são otimizadas para enviar conteúdo estático rapidamente, e isso pode melhor do que tentar enviá-lo ao longo do seu servidor generalista que também está tentando para gerar conteúdo dinâmico.
- Carga distribuída. É um desperdício gastar um processo inteiro do Apache para servir favicon.ico.
Para os dois primeiros, você deve observar que é muito fácil configurar seu servidor principal para enviar conteúdo estático em um número arbitrário de subdomínios sem cookies. Você também deve observar que ter seu conteúdo estático distribuído em muitos domínios pode matar o ganho de desempenho obtido com downloads paralelizados devido à viagem de ida e volta necessária para uma pesquisa de DNS. Para o terceiro e quarto ponto, eles realmente só ajudarão se o seu servidor principal estiver sob muita carga.
Para meu dinheiro, se você não estiver enfrentando um problema de desempenho específico, um CDN sob essa situação representa uma micro-otimização que não deve ser incomodada. Gostaria de configurar o servidor principal para servir conteúdo estático de alguns sub-domínios e chamá-lo por um dia.