Landskap pelayar web terus dikuasai oleh enjin Chromium milik Google, tetapi alternatif yang dipanggil Servo sedang membuat kemajuan secara senyap-senyap. Dibina sepenuhnya dalam Rust, enjin web eksperimen ini menawarkan gambaran tentang apa yang mungkin menjadi masa depan teknologi pelayaran web. Walau bagaimanapun, ujian terkini mendedahkan potensi dan had semasanya.
![]() |
---|
Memperkenalkan Servo: Enjin web eksperimen yang dibina dalam Rust menunjukkan potensi untuk masa depan teknologi web |
Prestasi Semasa Menunjukkan Keputusan Bercampur
Ujian terhadap binaan terkini Servo mendedahkan enjin pelayar yang masih dalam pembangunan. Walaupun laman web mudah seperti Wikipedia dan halaman berita berasaskan teks dipaparkan dengan betul, laman web yang lebih kompleks bergelut dengan elemen yang bertindih dan kerosakan sekali-sekala. Enjin ini memperoleh 83 daripada 100 mata dalam ujian piawaian web klasik Acid3, tidak mencapai 95 mata yang dicapai oleh pelayar moden seperti Chrome dan Firefox.
Penanda aras prestasi melukiskan gambaran yang menarik. Dalam ujian intensif grafik, Servo berjaya mencapai 60 bingkai sesaat dengan 400 imej beranimasi, manakala Safari mengendalikan lebih 1,500 imej pada kadar bingkai yang sama. Walau bagaimanapun, ujian ini tidak sepenuhnya adil kerana Servo berjalan di bawah emulasi x86 pada perkakasan berasaskan ARM, yang biasanya mengurangkan prestasi.
Penanda Aras Prestasi Servo
- Ujian piawaian web Acid3: 83/100 (berbanding 95/100 untuk pelayar moden)
- Ujian grafik Dogemania: 60 FPS sehingga 400 imej (berbanding 1,500+ imej Safari)
- Ujian Fizik Zarah: ~55 FPS purata
- Nota: Ujian dijalankan di bawah emulasi x86 pada perkakasan ARM, menjejaskan prestasi
Inovasi Teknikal Melalui Reka Bentuk Modular
Komuniti pembangunan telah menerima pendekatan Servo dalam memecahkan komponen enjin web kepada perpustakaan yang berdiri sendiri. Seorang pembangun yang bekerja pada sokongan CSS Grid menjelaskan bagaimana pelaksanaan mereka menggunakan perpustakaan luaran yang dipanggil Taffy, yang juga digunakan oleh projek Rust lain seperti editor teks Zed dan enjin permainan Bevy. Pendekatan modular ini boleh memudahkan pembangun masa depan untuk membina enjin web baharu tanpa bermula dari awal.
Enjin ini mengutamakan dua bidang utama: operasi berbilang benang dan keselamatan memori. Pemproses moden berfungsi dengan baik apabila tugas boleh dibahagikan merentasi berbilang teras, dan reka bentuk Rust membantu mencegah pepijat berkaitan memori yang melanda pelayar lain. Pasukan Chromium Google telah menyatakan bahawa sekitar 70% isu keselamatan serius mereka berpunca daripada masalah keselamatan memori.
Kelebihan Teknikal Servo
- Ditulis sepenuhnya dalam bahasa pengaturcaraan Rust
- Operasi berbilang benang untuk penggunaan CPU yang lebih baik
- Keselamatan memori mengurangkan kelemahan keselamatan
- Reka bentuk modular dengan komponen boleh guna semula (seperti perpustakaan susun atur Taffy)
- Diuruskan oleh Linux Foundation Europe dengan tadbir urus terbuka
Kekecewaan Komuniti Terhadap Keputusan Mozilla
Perbincangan paling hangat tertumpu pada keputusan Mozilla pada 2020 untuk meninggalkan pembangunan Servo. Pada asalnya dimulakan sebagai projek penyelidikan Mozilla pada 2012, Servo bertujuan untuk akhirnya menggantikan enjin Gecko lama Firefox. Mozilla bahkan berjaya mengintegrasikan enjin CSS Servo ke dalam Firefox, mewujudkan keluaran Firefox Quantum yang lebih pantas pada 2017.
Walau bagaimanapun, pemotongan bajet menyebabkan Mozilla memberhentikan 250 pekerja, termasuk kebanyakan pasukan pembangunan Servo. Keputusan ini terus mengelirukan komuniti teknikal, terutamanya memandangkan hubungan kewangan berterusan Mozilla dengan Google. Gergasi carian itu membayar Mozilla beratus juta dolar setiap tahun untuk kekal sebagai enjin carian lalai Firefox, namun Mozilla memilih untuk meninggalkan apa yang dilihat ramai sebagai masa depan teknikal mereka.
Sungguh mengelirukan bahawa untuk sebuah syarikat yang sering kelihatan mengejar Google, Mozilla sebenarnya telah mendahului Google dalam ruang pembangunan pelayar untuk seketika, dan kemudian memutuskan ia tidak berbaloi untuk diteruskan.
Enjin Alternatif Muncul
Sementara Servo meneruskan pembangunan di bawah Linux Foundation, projek lain juga mencabar dominasi enjin pelayar. Ladybird, yang ditulis dalam C++ oleh bekas pembangun WebKit, telah mendapat perhatian kerana dibiayai oleh derma tanpa sokongan korporat. Sesetengah ahli komuniti berhujah bahawa Ladybird sudah mengatasi Servo dalam ujian rendering web, walaupun kedua-dua enjin masih jauh dari sedia untuk pengeluaran.
Komuniti teknikal kekal terbahagi mengenai pendekatan mana yang menawarkan jalan terbaik ke hadapan. Ada yang memilih asas Rust Servo yang selamat memori, manakala yang lain menghargai kebebasan Ladybird daripada syarikat teknologi utama. Kedua-dua projek menghadapi cabaran besar untuk mengejar enjin pelayar yang disokong oleh pasukan yang beratus kali lebih besar.
Landskap Enjin Pelayar
- Chromium/Blink: Digunakan oleh Chrome , Edge , Opera , Brave , Arc , Vivaldi
- WebKit: Menggerakkan Safari dan beberapa pelayar alternatif
- Gecko: Enjin semasa Firefox (menggabungkan beberapa komponen Servo )
- Servo: Enjin eksperimen berasaskan Rust ( Linux Foundation )
- Ladybird: Enjin alternatif C++ (dibiayai melalui derma)
Melihat ke Hadapan
Pelan hala tuju semasa Servo memfokuskan pada pelaksanaan sokongan Shadow DOM dan CSS Grid, yang sepatutnya membetulkan banyak isu rendering pada laman web popular. Projek ini terus menerima sumbangan daripada pembangun di seluruh dunia, walaupun kemajuan kekal perlahan berbanding dengan kadar pantas pembangunan piawaian web.
Sama ada Servo atau mana-mana enjin alternatif boleh mencabar dominasi Chrome secara bermakna masih tidak pasti. Web telah menjadi sangat kompleks, dan membina enjin pelayar yang kompetitif memerlukan sumber yang besar dan komitmen yang berterusan. Walau bagaimanapun, pembangunan berterusan alternatif ini memberikan harapan untuk ekosistem pelayar yang lebih pelbagai dan kompetitif pada masa hadapan.
Rujukan: I tried Servo, the undercover web browser engine made with Rust