Gambar kinerja magento dan statis di CDN

11

Kami sedang menyelidiki peningkatan kecepatan Magento lebih lanjut. Apa yang kita lihat sekarang adalah bahwa dengan pengaturan berikut halaman ini terbang. Hanya gambar yang muncul kemudian. File utama dikirim dalam beberapa milidetik, tetapi waktu pemuatan masih 2 detik karena gambar.

  • caching mage
  • gabungkan css / js
  • minify apc + memcache
  • htaccess tweak
  • sesi / cache pada tmpfs

Pertanyaan saya: apa langkah-langkah untuk menyiapkan CDN (di server saya sendiri)? (dan apakah itu benar-benar membantu)

Saya mengerti ini seperti ini (tapi ini sama sekali tidak berfungsi):

  1. buat subdomain cdn
  2. ubah root dokumen (dan / atau mengapa mengatur cname?)
  3. ubah konfigurasi
snh_nl
sumber

Jawaban:

11

CDN atau Jaringan Pengiriman Konten umum berfungsi dengan menggunakan layanan yang menyediakan server di seluruh dunia untuk mengirimkan file media dengan cepat ke pengguna akhir yang mengurangi latensi jaringan. Ini berarti CDN menguntungkan toko web Anda ketika Anda memiliki pelanggan dari seluruh dunia mengunjungi toko Anda.

Jadi apa yang Anda usulkan untuk dilakukan tidak diambil CDN. Tapi selain itu ada beberapa hal yang dapat Anda lakukan.

  • Siapkan subdomain yang mengirimkan header ekstra sesedikit mungkin (seperti cookie) bersama dengan gambar
  • Konfigurasikan NginX di server Anda untuk melayani file statis. Karena NginX jauh lebih cepat daripada Apache, ini akan memberi Anda kecepatan
  • Gunakan layanan seperti http://www.jpegmini.com/ untuk mengompresi JPEG Anda lebih lanjut
  • Gunakan server file yang berbeda untuk menyajikan gambar, server web tujuan umum dikonfigurasi untuk melayani, dalam hal ini, halaman PHP. Server file akan memiliki konfigurasi berbeda yang lebih cocok untuk penyajian gambar dengan cepat.

Untuk menyajikan gambar dari subdomain Anda perlu melakukan hal berikut: tambahkan subdomain ke DNS Anda (cdn.shirtsofholland.com), tambahkan server alias ke konfigurasi Apache Anda untuk paket yang ada di mana toko berjalan.

ServerAlias cdn.shirtsofholland.com

Meneruskan subdomain ke paket ini, dan kemudian di Magento Backend pergi ke System > Configuration > General > Web > (un)secure urlmengubah Base media URLkehttp://cdn.shirtsofholland.com/

Proses untuk server Anda sendiri disebut Domain Sharding . [Perbarui 11jan2017] Sejak HTTP / 2 Domain Sharding hampir tidak bermanfaat lagi

Jika Anda menginginkan CDN asli, lihat layanan seperti OnePica, ekstensi Magento dapat ditemukan di sini atau Amazone AWS, Menggunakan tutorial Ashley Schroder

Sander Mangel
sumber
9

Anda tidak memerlukan kode atau plugin tambahan untuk menggunakan CDN yang mendukung pencarian asal. Ini termasuk Akamai, Cloudflare dan Amazon's Cloudfront. Yang harus Anda lakukan adalah titik System> Config> Web JS, Skin dan Media URL di domain yang benar:

masukkan deskripsi gambar di sini

Anda juga dapat mengatur catatan CNAME di DNS agar DNS merespons pada subdomain ke domain root Anda.

Philwinkle
sumber
3

CDN hanya 1 blok bangunan dari kinerja situs web E2E Anda dan melayani tujuan yang sangat spesifik yaitu untuk menyediakan kemampuan penskalaan semu-tak terbatas dan meningkatkan kinerja / kecepatan di mana objek statis disajikan kepada pengunjung situs Anda dengan mendistribusikan objek statis ini ke tepi server sedekat mungkin dengan pengunjung Anda di seluruh dunia menggunakan server pengiriman yang dioptimalkan untuk membangun.

Jika audiens Anda tersebar di seluruh dunia maka masuk akal untuk menggunakan solusi CDN komersial alih-alih membeli Server dan Bandwidth di seluruh dunia. Hanya segelintir perusahaan yang memiliki uang dan ahli untuk membangun Jaringan tersebut. Google telah melakukannya, Netflix melakukannya, tetapi kecuali Anda sebesar itu, tidak ada akal ekonomis dalam membangun CDN Anda sendiri dan Anda lebih baik menggunakan salah satu penyedia CDN Komersial. 3 penyedia Tier 1 terkemuka adalah Akamai, Limelight dan EdgeCast.

Ada 100-an penyedia CDN lainnya. Ini agak mirip dengan bisnis mobil, banyak merek, semua memiliki 4 roda dan mesin tetapi ada perbedaan besar antara masing-masing merek / model.

Tidak jelas apa audiens Anda atau berapa banyak traffic yang Anda kirimkan. Tanpa informasi ini, sulit untuk memberikan jawaban yang baik. Namun, menyiapkan CDN komersial semudah membiarkan CDN tahu domain mana yang menyajikan file-file statis.

dengan asumsi static.shirtofholland.com digunakan untuk melayani objek statis (gambar, js, css ...) maka Anda hanya perlu membuat cname itu, beri tahu CDN di mana server Origin (sehingga dapat menarik konten statis dan cache itu di tepi) dan akhirnya perbarui zona DNS Anda untuk mengarahkan cname statis itu ke penyedia CDN Anda. Atau Anda dapat menggunakan URL CDN secara langsung (disediakan oleh CDN Anda). Itu tidak terlalu elegan tetapi berhasil.

Aspek penting lain yang perlu dipertimbangkan ketika melihat peningkatan kinerja adalah sebagai berikut:

  • DNS - apakah penyedia DNS Anda saat ini cukup cepat dan dapat diandalkan? Menggunakan penyedia DNS yang Dikelola akan sangat bermanfaat dan tidak membutuhkan biaya banyak.

  • CDN untuk pengiriman objek statis

  • ADN atau DSA untuk mempercepat konten Dinamis (non-cacheable). Ini akan meningkatkan kinerja situs eCommerce secara dramatis tetapi harganya relatif mahal (tidak seperti CDN yang sangat terjangkau).

  • FEO atau Front End Optimization yang dapat dilakukan dengan optimasi kode (Lihat buku terlaris Souders, O'Reilly, Situs Web Kinerja Tinggi) atau menggunakan solusi komersial yang akan menerapkan aturan-aturan FEO ini (dan lebih banyak lagi) sambil jalan ke Anda situs Ini biasanya dilakukan di atas Dynamic Acceleration.

Laurent
sumber