Pertanyaan Mengapa peramban begitu berat? [Tutup]


Kembali pada tahun 1998 saya memiliki komputer dengan 233MHz Pentium MMX CPU dan kartu GFX tanpa akselerasi 3D. Ia mampu menjalankan game seperti Quake II pada tingkat FPS yang layak. Komputer saya saat ini memiliki lebih banyak kinerja dan GPU kelas menengah, namun berjuang untuk mencapai 20 FPS ketika menampilkan model tunggal di dalam skybox dengan WebGL. Bahkan halaman biasa dengan banyak animasi CSS 2D membawa banyak komputer modern ke lutut metafora mereka.

Sebagai pengembang web, saya mengerti ada banyak hal yang terjadi di halaman web tetapi tidak berhasil bahwa berat. Browser modern mengkompilasi JavaScript ke kode mesin asli CPU sebelum menjalankannya dan merender menjadi elemen kanvas tidak boleh memicu pembuatan ulang DOM sehingga secara teoritis seharusnya jauh lebih cepat daripada itu.

Apa yang hilang di sini dan apakah mungkin untuk menghindari atau meminimalkan apa pun yang membuat peramban lambat untuk membuat situs web yang lebih efisien?


4
2017-10-13 08:40


asal




Jawaban:


Banyak halaman terasa lambat karena mereka meminta iklan dari berbagai tempat. Halaman lain terasa lambat karena javascript ditulis dengan buruk. Faktor-faktor lain telah dijelaskan oleh Mokubai dan pengguna *. "Penyebut" umum, meskipun adalah javascript. Ini pada dasarnya bertanggung jawab untuk membuat peramban Anda lambat. Beberapa orang akan mengatakan bahwa itu terutama flash, tapi aku harus tidak setuju. Halaman flash yang ditulis dengan baik adalah ramping dan berarti. Animasi 3D, permainan interaktif, apa pun ... Masalah utamanya adalah orang yang tidak tahu cara membuat program secara efisien. Dan itu tidak selalu mudah!

Bagaimanapun. Jika Anda menjalankan Firefox, dapatkan NoScript. Ini akan memblokir semua javascript (dan flash), sementara memungkinkan Anda untuk mengaktifkan "kaya" elemen pada satu per satu atau halaman demi halaman. Jika Anda bukan penggemar firefox, maka google chrome adalah taruhan terbaik Anda berikutnya, karena benar-benar sangat cepat.


1
2017-10-13 11:19





Laman web jauh lebih besar hari ini daripada dua dekade yang lalu, dan mereka juga menggunakan lebih banyak komponen yang memerlukan banyak CPU, seperti Flash.

Halaman web dari dua dekade yang lalu akan menjadi sekitar 7KB, todays yang mencatat sekitar 200-300K? Dan saat itu, Anda dapat JavaScript sangat minim, dengan sedikit gambar, dan jika mereka gambar, Anda melihat GIF atau JPEG kecil. Dan Flash dapat mengunci mesin dengan kinerja yang mengerikan. Sekarang Anda memiliki situs web dengan beberapa item Flash, dengan 1920x1080 atau JPEG yang lebih besar.

Browser sama efisiennya seperti yang akan mereka dapatkan.


0
2017-10-13 08:57





Agak tidak adil untuk membandingkan laman web modern 3D, CSS, AJAX, dan JavaScript yang penuh dengan laman web lama di mana yang paling rumit adalah menukar gambar di sekitar pada tombol atau di laman setiap beberapa detik.

Apa yang Anda minta agar dilakukan oleh peramban adalah lebih rumit dengan beberapa perintah besarnya, pemodelan perhitungan 3D untuk meneruskannya ke kartu grafis saja membutuhkan daya pemrosesan yang jauh lebih banyak daripada halaman web "pasang gambar di sini" sederhana dari tadi.

Model-model di Quake tidak rumit, mengelola urutan puluhan poligon per model daripada permainan modern yang mengharapkan puluhan ribu poligon per model.

Bahkan kemudian saya tidak berharap untuk melihat degredation besar dalam kinerja di browser dan saya akan melihat model Anda sendiri. Semakin banyak poligon dalam model, semakin lama waktu yang diperlukan untuk menghitung dan beralih ke kartu grafis.

Cobalah mencari tahu apakah Anda dapat mengurangi kerumitan (jumlah poligon) dalam model Anda sebagai kasus pertama, 3D selalu lebih banyak tentang mendapatkan tingkat kerumitan yang tepat dalam model sehingga terlihat bagus, tetapi tidak memengaruhi kinerja terlalu buruk.

Situs ini dari Eksperimen Chrome adalah contoh dari 3D dalam browser yang baik, terlihat cukup halus untuk saya (di Firefox) dan itu adalah tingkat detail yang saya harapkan dapat berjalan dengan baik. Jika Anda memiliki masalah dengan situs yang sangat lambat maka saya akan ingin tahu apakah browser Anda benar-benar menggunakan kartu grafis untuk membuat 3D.


0
2017-10-13 09:22



Ya, laman web lama jauh lebih sederhana daripada sekarang, tetapi saya tidak membandingkan situs modern dengan mereka - setidaknya tidak dengan sengaja. Maksud saya adalah bahwa situs yang Anda tautkan dapat berjalan mulus, jika tidak lancar, pada Pentium sebagai aplikasi asli bahkan tanpa akselerasi 3D. - Kaivosukeltaja