Sebagai tindak lanjut dari pengumuman sebelumnya, dukungan Push Server HTTP/2 akan dinonaktifkan secara default di Chrome 106 dan browser berbasis Chromium lainnya dalam rilis berikutnya.
Mengapa konten ini dihapus?
HTTP/2 Server Push memungkinkan situs web secara proaktif mengirim sumber daya yang dibutuhkan oleh halaman, bukan menunggunya diminta. Namun, hal ini menjadi masalah karena Jake Archibald menulis tentang hal ini sebelumnya, dan manfaat performanya sering kali sulit disadari. Akibatnya, situs tersebut tidak banyak digunakan dan hanya 1,25% situs HTTP/2 yang menggunakan fitur ini.
Analisis penggunaan HTTP/2 Server Push memiliki hasil yang beragam (Chrome, Akamai), tanpa peningkatan performa bersih yang jelas dan dalam banyak kasus terdapat regresi performa.
Push tidak diterapkan di banyak klien dan server HTTP/3—meskipun telah disertakan dalam spesifikasi. Untuk sebagian besar web yang menggunakan HTTP/3 yang lebih baru, Push sudah dihentikan secara efektif. Ketika menjalankan kembali analisis tersebut baru-baru ini, kita melihat bahwa 1,25% dukungan HTTP/2 oleh situs turun menjadi 0,7%.
Alternatif untuk HTTP/2 Server Push
103 Petunjuk Awal adalah alternatif yang jauh lebih tidak rentan error dengan banyak keunggulan yang sama seperti Push, dan jauh lebih sedikit kekurangannya. Sebagai ganti server yang mendorong resource, 103 Petunjuk Awal hanya mengirimkan petunjuk ke browser resource yang mungkin dapat memanfaatkan permintaan secara langsung. Dengan demikian, browser dapat mengontrol apakah browser memerlukannya atau tidak—misalnya, jika browser telah memiliki resource tersebut di cache HTTP.
Pramuat resource penting adalah alternatif lain yang memungkinkan halaman dan browser bekerja sama untuk memuat resource penting secara preemtif di awal pemuatan halaman. Meskipun hal ini membutuhkan halaman itu sendiri untuk dikirim terlebih dahulu—jadi tidak secepat Server Push atau Petunjuk Awal—hal ini memiliki manfaat tambahan dengan tidak menunda resource halaman penting, yang bisa terjadi dengan kedua solusi tersebut.
Kesimpulan
Web harus dapat mencoba berbagai hal, dan menghapusnya jika tidak digunakan. Meskipun potensi Push terdengar hebat, pada kenyataannya penggunaannya lebih bermasalah daripada yang dibayangkan. Namun, kami belajar banyak dari Push yang masuk ke dalam desain 103 Petunjuk Awal. Sekarang saatnya menyelesaikan progres dan menjauh dari Push.
Link terkait
- Semua penghentian penggunaan dan penghapusan di Chromium
- Entri ChromeStatus: Remove HTTP/2 push
- Intent untuk Dihapus: HTTP/2 and gQUIC server push
- Masalah Chromium: Menonaktifkan HTTP/2 Push secara default
Ucapan terima kasih
Banner besar oleh Scott Rodgerson di Unsplash