Kapan dan kapan tidak menggunakan CDN

13

Saya sedang mengerjakan aplikasi web yang memuat beberapa gambar gif kecil ke layar. Saya menggunakan jalur relatif, yang berarti mereka dimuat dari server web yang sama yang melayani halaman php. Operasi ini instan, dan saya berada di benua yang berbeda dari server web.

Saya baru saja menguji jaringan CDN untuk ini (Cloudfront), berpikir bahwa memindahkan file statis lebih dekat ke pengguna adalah ide bagus. Namun, semua file ini sekarang membutuhkan waktu setengah detik untuk ditampilkan di layar. Saya sekarang harus menggunakan jalur absolut, tentu saja (https://xyzvf.cloufront.net/images/)

Mengapa demikian? Apakah jalur absolut merupakan masalah? Saya mengurangi permintaan HTTP ke server saya sendiri yang merupakan hal yang baik, tetapi penundaan itu mengganggu. Bukankah CDN cocok untuk ini?


sumber
4
Cukup banyak tergantung di mana CDN berada. Jika Anda memiliki banyak gambar kecil, apakah menggabungkannya menjadi sprite merupakan pilihan? Itu berarti hanya satu permintaan untuk memuat semua gambar.
Mereka memiliki lokasi ini : michaelgaigg.com/blog/images/amazon-cloudfront.jpg Saya di Eropa, dan memuat gambar dari server web saya di AS lebih cepat daripada memuat dari Jerman atau dari mana pun lokasi eropa yang dilayani oleh amazon. Atau mungkin bukan waktu loading yang menjadi masalah tapi ada yang lain? Menggunakan sprite adalah ide bagus terima kasih.
Anda dapat menggunakan juga menggunakan URL tanpa protokol dengan nama host, seperti "//xyzf.cloudfront.net/images". Ini memungkinkan Anda untuk mengambil keuntungan dari cache ISP dan perusahaan untuk cache versi gambar non-SSL. Ini dapat memiliki manfaat luar biasa untuk pengalaman pengunjung Anda dan beban server / bandwidth. Pengunjung situs kami hampir semuanya dari lembaga keuangan yang berbasis di AS, dan kami mendeteksi sekitar 85% kunjungan dari belakang beberapa bentuk proxy caching. YMMV, jadi uji situs Anda sendiri dan lalu lintas tentu saja.
rmalayter

Jawaban:

6

Masalah mungkin DNS atau keep-alive- yaitu, browser sudah memiliki alamat IP untuk server Anda dan memiliki koneksi terbuka untuk itu, sedangkan itu harus menyelesaikan nama server CDN dan kemudian buka koneksi baru di sana, dan salah satu dari mereka atau keduanya merupakan penundaan yang Anda lihat.

Menulis, meskipun masih merupakan ide bagus, tidak akan membantu masalah itu. Memang, tidak ada solusi yang terlintas dalam pikiran. Satu-satunya kenyamanan adalah bahwa penundaan setengah detik tidak akan menjadi lebih lama jika Anda memiliki ribuan gambar (dan file CSS dan file JS dan file statis apa pun yang Anda butuhkan) dan tidak akan membuat tekanan lebih pada server asal Anda jika seribu lebih banyak pengguna memukulnya.

Malvolio
sumber
Ini berdering. Saya harus menyebutkan bahwa panggilan pertama ke server CDN dilakukan ketika gambar pertama diperlukan, seperti di tengah halaman.
Ah, maka Anda mungkin mendapatkan kinerja (persepsi) yang lebih baik jika Anda membuat referensi, referensi apa pun, ke CDN di awal halaman. Cara terbaik mungkin dengan meletakkan file CSS Anda pada CDN dan meletakkan linktag di headbagian tersebut, sehingga proses koneksi akan segera dimulai.