Ini mungkin jelas bagi sebagian orang, tetapi saya bertanya-tanya: mengapa saya harus bergantung pada server Google untuk meng-host jQuery untuk situs saya?
Apakah hanya karena memuat lebih cepat dengan cara ini?
jquery
performance
cdn
Yvette
sumber
sumber
Jawaban:
Hal ini karena:
(Sebagian besar browser hanya akan mengunduh 3 atau 4 file pada satu waktu dari situs mana pun.)
(Karena lebih banyak situs mengikuti praktik ini, lebih banyak pengguna sudah memiliki file siap.)
(Google dapat memampatkan file dalam beragam format (seperti GZIP atau DEFLATE). Ini membuat waktu untuk mengunduh sangat kecil, karena sangat dikompresi dan tidak dikompresi dengan cepat.)
(Google pada dasarnya menawarkan bandwidth gratis.)
(Google memiliki server di seluruh dunia, semakin mengurangi latensi.)
(Jika Anda suka "terbang di kursi celana Anda," Anda selalu dapat menggunakan versi terbaru dari skrip apa pun yang mereka tawarkan. Ini dapat memperbaiki lubang keamanan, tetapi umumnya hanya merusak barang-barang Anda.)
sumber
Ada beberapa skenario ketika Anda mungkin tidak ingin menggunakan jQuery dari CDN Google:
Ketika Anda membangun aplikasi intranet di mana server web di-host di jaringan yang sama dengan klien. Jika Anda menggunakan jQuery CDN Google, Anda akan melakukan panggilan ke internet daripada server web di jaringan lokal. Ini meningkatkan bandwidth untuk organisasi Anda, dan lebih lambat.
Saat Anda ingin menjalankan aplikasi secara offline . (Cukup ditautkan dengan masalah pertama) Jika Anda perlu bekerja di lingkungan pengembangan (dikelola misalnya dengan Bower ), Anda mungkin harus dapat membuat aplikasi Anda berfungsi tanpa koneksi internet (misalnya: di kereta :)
Ketika Anda perlu menyesuaikannya . Misalnya jika Anda menggunakan Grunt untuk membangun perpustakaan agar hanya menggunakan modul tertentu atau mengatur nama AMD
Saat Anda melayani halaman melalui SSL yang membutuhkan jQuery. Anda harus menayangkan JavaScript melalui SSL dan juga halaman Anda untuk menghindari masalah keamanan dan peringatan.
Juga, Microsoft host jQuery di CDN mereka. Itu adalah pilihan lain yang sebanding dengan menggunakan jQuery yang dihosting Google.
sumber
src="//ajax.googleapis.com/..."
, kerja.Studi ini oleh TJ VanToll meyakinkan saya bahwa lebih baik menggabungkan jQuery dengan skrip lain daripada memuatnya dari CDN.
Alasannya adalah latensi yang terlibat dalam mengambil jQuery di perangkat seluler:
Dia juga mengutip posting ini dari Steve Souders yang menunjukkan mengapa Anda sebenarnya tidak mungkin mendapatkan manfaat caching dari menggunakan CDN:
sumber
Manfaat terbesar adalah dari caching. Teorinya adalah bahwa jika pengunjung mengunjungi situs yang memuat pustaka JavaScript mereka, katakanlah jQuery misalnya dari Google CDN, maka ketika mereka mengunjungi situs web Anda, pustaka sudah ada dalam cache browser pengguna itu dan tidak perlu diunduh lagi . Ini terdengar hebat secara teori.
Manfaat yang dibagikan di sini dan di tempat lain semuanya teoretis. Baru saja menemukan analisis mendalam tentang menggunakan CDN dan jika memberikan manfaat kinerja yang diharapkan. http://www.root777.com/appdev/does-using-google-libraries-api-cdn-give-you-performance-benefits
sumber
Alasan utama TIDAK untuk membiarkan Google meng-host jQuery Anda, salah satu yang tidak dipikirkan banyak orang, adalah bahwa itu tidak akan diunduh jika Anda berada di China. Itu diblokir bersama dengan banyak skrip lain, font dll ... di-host oleh Google CDN. Jika Anda perlu menjangkau audiens Cina, Anda sebaiknya selalu menggunakan back-back yang di-host di server Anda sendiri. Google APIS Dicekal di Tiongkok
sumber
Beberapa jawaban yang bagus di sini adalah "Mengapa kamu harus ..." dan "Mengapa kamu tidak boleh ..."
Saya hanya ingin menambahkan daftar alternatif ke Google jika Anda ingin memuat jQuery dari CDN.
Tetapi untuk menyimpulkannya, Anda pada dasarnya meningkatkan kinerja situs web / aplikasi Anda secara keseluruhan.
sumber
Gunakan CDN dengan Pekerja Layanan, Anda dapat mengunduh CDN satu kali seumur hidup klien, dan tidak setiap kali Anda memperbarui kode.
sumber