Aggiornamento basato sui commenti:
Versione breve: non importa molto, ma può dipendere da ciò che ospitano. Essi tutte le cose diverse ospitanti: Google non ospita jQuery.Validate, Microsoft non ha padrone jQuery-UI, poiché 2016 fanno !!, Microsoft offre loro script che altrimenti sarebbero serviti tramite ScriptResource.axd
e un'integrazione più semplice (ad esempio ScriptManager con ASP. Net 4.0 ).
Nota importante: se stai creando un'applicazione intranet, stai lontano dall'approccio CDN. Non importa chi lo sta ospitando, a meno che tu non sia internamente su un server molto sovraccarico, nessun CDN ti offrirà più prestazioni di quanto non lo sia la Ethernet locale da 100 mb / 1 GB. Se usi un CDN per un'applicazione rigorosamente interna, stai danneggiando le prestazioni . Imposta correttamente le intestazioni di scadenza della cache e ignora l'esistenza di CDN nello scenario solo intranet.
Le possibilità di essere bloccati sembrano essere quasi uguali, quasi zero. Ho lavorato su contratti in cui questo non è vero, ma sembra essere un'eccezione. Inoltre, dalla pubblicazione originale di questa risposta, il contesto che la circonda è molto cambiato, la Microsoft CDN ha fatto molti progressi.
Il progetto a cui sto lavorando attualmente utilizza entrambe le CDN che funzionano meglio per la nostra soluzione. Diversi fattori giocano in questo. Gli utenti con un browser più vecchio probabilmente stanno ancora effettuando 2 richieste simultanee per dominio come raccomandato dalla specifica HTTP . Questo non è un problema per chiunque esegua qualcosa di relativamente nuovo che supporti il pipelining (ogni browser corrente), ma in base a un altro fattore stiamo eliminando anche questa limitazione, almeno per quanto riguarda il javascript.
La CDN di Google che stiamo utilizzando per:
Il CDN di Microsoft che stiamo utilizzando per:
Il nostro server:
- Combined.js? V = 2.2.0.6190 (Major.Minor.Iteration.Changeset)
Poiché parte del nostro processo di compilazione consiste nel combinare e minimizzare tutto il javascript personalizzato, lo facciamo tramite un gestore di script personalizzato che include le versioni di rilascio o debug (non minimizzate) di questi script a seconda della build. Poiché Google non ospita il pacchetto di convalida jQuery, questo può essere un aspetto negativo. MVC lo sta includendo / usando nella loro versione 2.0, quindi puoi fare affidamento completamente sul CDN di Microsoft per tutte le tue esigenze e tutto automaticamente tramite ScriptManager .
L'unico altro argomento da fare sarebbero i tempi DNS, il cui costo è in termini di velocità di caricamento della pagina. In media: semplicemente perché viene utilizzato di più (è in circolazione da più tempo) ajax.googleapis.com
è probabile che venga restituito dal DNS prima di ajax.microsoft.com
, semplicemente perché il server DNS locale ha maggiori probabilità di ricevere una richiesta per questo (si tratta del primo utente nell'area di rigore) . Questa è una cosa molto minore e dovrebbe essere presa in considerazione solo se le prestazioni sono estremamente importanti, fino al millisecondo.
(Sì: mi rendo conto che questo punto è contrario al mio utilizzo di entrambi i CDN, ma nel nostro caso il tempo DNS è ampiamente oscurato dal tempo di attesa sul javascript / blocco che si verifica)
Infine, se non l'hai ancora visto, uno dei migliori strumenti disponibili è Firebug e alcuni plug-in: Page Speed e YSlow . Se usi un CDN ma le tue pagine richiedono immagini ogni volta a causa della mancanza di intestazioni di cache, ti stai perdendo il frutto a basso impatto. Il pannello Net di Firebug può darti rapidamente una rapida suddivisione del tempo di caricamento della pagina e Page Speed / YSlow può offrire alcuni buoni suggerimenti per aiutarti.