This repository has been archived by the owner on Sep 22, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Menganalisa First Meaningful Paint #2
Labels
performance
make the web fast
Comments
faultables
added
draft
post still in progress
performance
make the web fast
and removed
draft
post still in progress
labels
Apr 22, 2019
Update:
Sorry netlify this is not your fault. Problem solved, I have configured it via cloudflare. |
Mantap! 👍 |
@zainfathoni mantul , terima kasih sudah mampir kesini (ini playground kami bersama @108kb ) heheheh |
Solusi kalau mau pakai |
Oalah, 4L juga ternyata. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Barusan menganalisa Lighthouse Report untuk situs evilfactory.id halaman index. Mengapa halaman index? Karena halaman index adalah halaman awal dimana pengunjung akan melihat bagaimana layanan yang kita tawarkan.
Berikut hasil reportnya:
Terlihat bahwa dibagian performance, memiliki skor 94. Bagian yang paling menarik adalah bahwa waktu untuk mencapai "First Meaningful Paint" memakan 2.5 detik.
"Screenshot" diatas muncul (tulisan-tulisan) setelah sekitar 2.5 detik. Berikut data yang saya gunakan untuk menguji situs tersebut (di local):
Masalah
Ada beberapa rekomendasi yang diberikan Lighthouse, salah satunya adalah dibagian "Opportunities" yakni Remove unused CSS, karena memang ada beberapa file (dan selectors) yang tidak digunakan pada halaman tersebut.
Wow dihalaman index hanya 2.5% selector yang digunakan (untuk file tachyons), dan 32.9% untuk global dan chunked styles.
Kita bisa menyelesaikan masalah ini dengan bantuan tools seperti PurgeCSS atau PurifyCSS. Beruntung karena kita pakai Gridsome, sudah ada plugin untuk integrasi dengan PurgeCSS with less effort.
Pada PR ini saya integrasikan dengan fungsionalitas PurgeCSS, dan hasilnya:
First Meaningful Paint kita menjadi 2.3s! Score Performance pun bertambah dari yang sebelumnya 94 menjadi 98. Hal-hal yang saya lakukan adalah:
Load file CSS dari local
Sebelumnya saya load file-file CSS tersebut dari CDN, dengan alasan fast for prototype. Setelah prototype selesai, waktunya fokus ke performa sebelum menambah hutang teknikal lebih banyak. Caranya mudah, karena saya malas tinggal gunakan perintah ini:
Selesai!
Purge CSS alias jangan muat selector yang tidak digunakan
Karena saya menggunakan tachyons, ada beberapa selector yang tidak digunakan namun tetap termuat. Dan pastinya ini masalah, dengan bantuan PurgeCSS masalah ini terselesaikan meskipun tidak 100% akurat (tidak 100% hanya memuat selector yang dibutuhkan saja).
Inilah hasilnya setelah saya gunakan PurgeCSS:
Menjadi hanya sekitar 128kb yang tidak digunakan dari total 282kb. Setidaknya beda dengan yang sebelumnya yang mana total bytes yang tidak digunakan sekitar 221kb dari total bytes 349kb. Every byte counts, and little improvement is an improvement.
PR Lainnya
font-display
), tapi tetap tidak berpengaruh (performance)Serve static assets with an efficient cache policy. Tim google merekomendasikan untuk melakukan caching lebih lama, 1 tahun anjiiir. Sedangkan Netlify hanya menyimpan cache selama 4 jam. Mungkin ini bisa diselesaikan via. Done. 1 tahun.serviceWorker
Hasil Lighthouse Terbaru
Bisa diakses disini
The text was updated successfully, but these errors were encountered: