Magento 2 - Waktu pemuatan yang berat (terlalu banyak file js)

8

Saat ini saya sedang mengerjakan Magento 2 dan saya perhatikan bahwa waktu pemuatan untuk semua halaman sangat tinggi.

Saya sedang menjalankan Xampp saat ini, mode produksi diaktifkan, HTML / js / CSS digabungkan dan diperkecil, Varnish dinonaktifkan dan saya tidak akan menggunakannya karena hosting web saya tidak dapat menginstalnya di server saya karena akan mengganggu beberapa skrip. Saya menggunakan tema khusus yang induknya adalah tema kosong Magento 2. Setelah mengubah pengaturan saya, saya memindahkan file statis dan mengosongkan cache.

Perhatian utama saya adalah ketika saya melihat panel jaringan saya melihat bahwa sejumlah besar file js dimuat setiap waktu. Sebagai contoh pada halaman kategori saya, file 122 js dimuat yang saya temukan cukup banyak, dengan ukuran total 955 ko.

Saya mengujinya di server saya tanpa penggabungan dan minifying, tetapi seperti yang saya katakan di atas, saya pikir masalahnya terletak pada jumlah file yang dimuat karena bahkan jika memuat lebih cepat masih terlalu lama dan pada proses checkout itu lebih buruk.

Saya mencoba opsi bundling tetapi menghasilkan file js 8MB yang lebih buruk.

Apakah saya melewatkan sesuatu atau apakah jumlah file js agak normal? Apakah Varnish wajib untuk kinerja yang baik dan apakah ada alternatif untuk itu?

Saya cukup baru di Magento 2 jadi jika Anda butuh info lebih lanjut saya akan dengan senang hati memberikannya.

Tonani
sumber
Ini biasa terjadi pada Magento 2, untuk memuat 120 atau bahkan lebih dari 150 skrip. Anda selalu dapat menggabungkan dan memperkecil mereka menjadi satu file. Tapi periksa untuk memastikan Anda menggunakan HTTP1 atau HTTP2 di server Anda. Jika HTTP2 Anda diaktifkan, maka skrip yang dimuat secara asinkron 120 atau bahkan 150 js tidak akan menjadi masalah karena cara kerja HTTP2. HTTP2 lebih baik dengan beberapa file kecil yang dimuat sekaligus, daripada harus memuat satu file js minified gabungan besar. Tapi saya merasakan sakit Anda, Magento 2 adalah sakit kepala besar untuk bekerja dibandingkan dengan Magento 1. Tapi saya merasa Magento 2 masih lambat!
Jonathan Marzullo

Jawaban:

3

Jumlah JS sangat besar, tetapi jika jumlah hingga 8MB ada sesuatu yang salah. Anda harus menggunakan konfigurasi "Bundling" dalam mode produksi jika Anda tidak ingin> 100 file dimuat.

Dengan tema Luma default, bundling, gabung dan minify diaktifkan, file JS yang dibundel adalah 1.9MB.

Varnish adalah topik lain dan tidak akan membantu dengan kinerja file statis yang dihasilkan.

Fabian Schmengler
sumber
Itu yang saya lakukan dan membuat file js 8mo. Apakah ada konfigurasi khusus yang harus dilakukan terkait bundling selain mengaktifkannya di admin? Saya membersihkan dan membersihkan cache setelahnya.
Tonani
Anda harus mengaktifkan mode produksi, memindahkan kembali file-file statis dan membersihkan cache, tetapi saya kira Anda sudah melakukannya
Fabian Schmengler
Ya saya lakukan. Mungkin ada yang salah dengan tema kosong.
Tonani
Saya mengalami masalah serupa namun merasa seperti bundling memiliki masalah di beberapa titik dan sekarang sudah diperbaiki. Saya menggunakan seoptimer.com ini dan ini masih menunjukkan situs saya untuk memiliki JS besar sekitar 5MB ketika DevTools menunjukkan 1,5MB dalam tab jaringan untuk JS pada halaman produk. Apakah situs ini salah?
harri
1

Saya juga cukup baru di Magento 2, tetapi sejauh ini dengan Magento 1 dan 2, kami harus mengaktifkan caching untuk mendapatkan apa pun untuk memiliki kecepatan apa pun. Jumlah js sangat besar, jadi caching adalah teman terbaik Anda. Anda dapat mengaktifkan caching dengan menjalankan cache php bin / magento: aktifkan. Jika Anda memiliki caching aktif, Anda harus menghapusnya setelah membuat perubahan menggunakan php bin / magento cache: flush. Caching bawaan Magento 2 tersedia, bahkan tanpa Vanish.

Zach L
sumber
0

Benar-benar mengejutkan bahwa masalah ini aktual untuk Magento 2 pada tahun 2020. Bundling tidak mengikat 90% file (seperti dijelaskan di sini )

Js menggabungkan, di sisi lain, menggabungkan semuanya menjadi paket super-berat-mega.

Namun, meskipun tidak dapat diselesaikan dengan Magento default, berikut ini adalah ekstensi berbayar yang banyak meningkatkan perilaku yang disebutkan di atas: optimasi kecepatan halaman Google

Evgeni Obukhovsky
sumber