Pro e contro degli script ospitati [chiuso]

12

Ho visto alcuni sviluppatori utilizzare script ospitati per collegare le loro librerie.

cdn.jquerytools.org è un esempio.

Ho anche visto persone che si lamentano del fatto che un link di script ospitato è stato dirottato.

Quanto è sicuro utilizzare gli script ospitati nella realtà? Gli script vengono aggiornati automaticamente? Ad esempio, se jQuery 5 va a 6, ottengo automaticamente la versione 6 o devo aggiornare il mio link?

Vedo anche che Google ha una vasta serie di questi script di configurazione per l'hosting.

Quali sono i pro e i contro?

    
posta P.Brian.Mackey 30.06.2011 - 16:29
fonte

5 risposte

11

Pro

  • I tuoi script sono caricati più velocemente . Se hai un'abbondanza di risorse che deve essere caricato da un singolo dominio, il tuo browser sarà in genere un collo di bottiglia questo in modo che tu abbia solo una manciata di richieste parallele al stesso host. Quindi se stai caricando sedici script separati, multipli immagini e più documenti CSS ci sarà coda come ciascuno la risorsa attende il suo turno per essere caricata. (Sicuramente guarda in concatenazione i tuoi file CSS e Javascript - caricamento solo di due risorse di script sarà significativamente più veloce).
  • Se spegni quelle risorse in un dominio separato, tuttavia, il tuo il browser non ha problemi di apertura connessioni aggiuntive a questo server, il che significa che di più le risorse vengono caricate contemporaneamente con conseguente esecuzione della pagina più veloce. Stai anche lasciando un altro il server gestisce parte della tua pagina caricamento, che è buono per il tuo server che sta probabilmente lavorando diverse richieste di esecuzione di script come lo è.
  • Inoltre, questi server CDN (reti di contenuti devivery) configurato per operare come CDN. Essi sono in genere senza cottura (per i più piccoli dimensioni del pacchetto) e sono impostati con un server estremamente leggero che si preoccupa interamente di servire risorse e memorizzazione nella cache comunemente usati risorse e non tanto con il sollevando ogni giorno quel qualcosa come un server Apache standard si esibirà.
  • Uso di un CDN come Google o Akami altri vantaggi pure - Google in particolare ha server dappertutto mondo e i suoi sistemi di routing sono abbastanza intelligente da accoppiare una richiesta di a risorsa con la più vicina geografica copia che esiste Il tuo server potrebbe provare a servire jQuery.js a Vladimir finito in Russia - Google probabilmente ha la stessa risorsa in basso la strada da Vladimir, in calo latenza.
  • Inoltre, poiché già tanti siti web usa questi CDN, c'è un massimo probabilità che tu sia la risorsa il servizio è già stato memorizzato nella cache da l'utente. jQuery.js dal tuo server e jQuery.js dal server di Google non sono trattati come lo stesso file, no importa se sono esattamente uguali se carichi da Google, lo sarà in grado di utilizzare la copia memorizzata nella cache dal sito precedente visitato dall'utente.
  • I file stessi non cambieranno, soprattutto per le risorse di script come Quadri Javascript. Se un nuovo esce la versione, Google lo farà continua ad ospitare la vecchia versione (n importa quanto odiosi gli insetti) in modo specifico per il CDN continuare a funzionare normalmente e non servire qualsiasi cattiva richiesta. Ecco perché qualsiasi file CDN è completamente suffisso con il numero di versione appropriato.

Contro

  1. Esiste la possibilità che la tua CDN non sia disponibile. Le probabilità, tuttavia, sono inferiori a quelle del tuo sito, probabilmente. I CDN più grandi come Google e Akami hanno più livelli di failover.
  2. La creazione di una nuova connessione potrebbe non valerne la pena se hai solo una o due risorse da caricare dal tuo server.
  3. Non hai alcun tipo di controllo sul file che viene offerto, quindi l'uso della tua versione personalizzata di jQuery o di qualsiasi altra cosa tu stia cercando di caricare è fuori, a meno che tu non stia pagando per il tuo CDN.

Sicurezza

Vorrei raccomandare questo post di El Stack oltre a una buona quantità di ricerche su Google sull'argomento. Ogni CDN sarà diverso, anche se in breve credo che questo sarebbe un problema minore.

    
risposta data 30.06.2011 - 17:17
fonte
1

Qualcosa di cui non si parla è un'altra opzione di tracciamento per Google. Non offrono tutti questi servizi gratuitamente, senza motivo. AdSense e Analytics sono abbastanza e almeno quelli che possono essere filtrati. Questo è un grosso problema nel mio libro.

    
risposta data 15.04.2012 - 05:10
fonte
0

Pro:

  • Non devi pagare la larghezza di banda relativa alla pubblicazione dei file e in generale

Contro:

  • Sei soggetto a disponibilità di il provider di hosting che stai utilizzando (se scendono per qualsiasi motivo, anche tu sei giù).
  • Sei costretto a qualunque versione (i) degli script i provider di hosting hanno

Ci sono altri vantaggi nell'usare una CDN ma non si riferiscono direttamente all'utilizzo di un terzo servizio di hosting di script.

    
risposta data 30.06.2011 - 17:11
fonte
0

Per quanto riguarda le best practice, l'approccio comune per ottimizzare il caricamento della pagina è quello di raggruppare tutte le risorse JS, a causa del numero limitato di connessioni verso un singolo dominio come menzionato da Jarrod, e l'impostazione di un futuro molto lontano scade nell'intestazione risposta.

Quali CDN portano a un tale mix, specialmente quelli popolari, come Jarrod ha anche sottolineato, è che l'utente avrebbe già precedentemente accesso all'URL e può recuperare la risorsa JS immediatamente dalla cache del suo client senza nemmeno richiedere di stabilire un collegamento.

In questo senso, se tutti noi usassimo CDN e usassimo le best practice, possiamo salvare l'utente dal recuperare un ulteriore ~ 10-50KB quando inizialmente accede ai nostri URL e consente loro di caricare le loro pagine più velocemente.

Vorrei consiglia vivamente di utilizzare i CDN per due motivi: i contro menzionati Jarrod sono lì, veri, ma del tutto insignificanti e se stai già raggruppando le tue fonti in un singolo documento, forzerai tutti per recuperare, ad esempio, la porzione jQuery statica del documento (~ 33 KBs) ogni volta che aggiorni una delle risorse in bundle.

Non so quanto sia importante per te, ma con enormi basi di utenti questo porta a una significativa riduzione della larghezza di banda e risparmi significativi, dei quali possiamo distogliere questioni più urgenti, come lo streaming di porn e l'acquisto di birre.

    
risposta data 30.06.2011 - 17:44
fonte
-2

Non farlo

Personalmente, non mi affiderei agli script ospitati da terze parti. Se si sfruttano le copioni di altri popoli sei alla loro mercé. Ci sono diverse cose da considerare:

  1. Se il loro sito va inattivo, la tua pagina potrebbe scadere o si verificherebbe un errore.
  2. Se falliscono e disattivano l'hosting, hai perso tutte quelle funzionalità
  3. Se vengono violati, potresti anche essere violati.
  4. Lo scripting cross-site può causare scompiglio con i certificati SSL
  5. I tempi di caricamento delle pagine possono aumentare notevolmente
  6. Se l'interfaccia cambia, è necessario modificare tutte le chiamate di funzione

È più sicuro ospitare il codice sul tuo sito, fidati di me. Devi solo masterizzarti una volta e avere 250 siti web che hai creato e l'host inizia a comportarti in modo divertente perché ti sei affidato a uno script in terza parte che ha smesso di funzionare.

    
risposta data 30.06.2011 - 17:28
fonte

Leggi altre domande sui tag