Pada artikel kali ini penulis mencoba menjelaskan 14 aturan dasar agar website kita cepat diload.
- Perkecil jumlah HTTP requests Hindari pemakaian image map server site dan perkecil jumlah script hal-hal lain yang merequest ke server
- Gunakan CDN Content Delivery Network (CDN) adalah networ komputer yang terhubung bersama-sama melalui internet yang bekerjasama untuk mengirimkan content kepada user. Berikut situs-situs dan penyedia layanan CDNnya:
- Tambahkan Expires header
Browser akan mencocokkan apakah cache di browser sudah kadaluarsa apa belum dan ini akan memakan waktu apabila ternyata cache sudah kadaluarsa. Untuk mencegah ini tambahkan expires date.
- Gzip components HTML, XML, CSS dan JSon (selain gambar dan PDF). Penulis menggunakan kode berikut di baris atas untuk mengcompress halaman blog ini.
- <?php
- ob_start("ob_gzhandler");
- ?>
- Tempatkan CSS di bagian atas Karena CSS akan menghalangi proses render di Internet Explorer. Untuk mencegah hal ini letakkan CSS di <HEAD> HTML Anda dan gunakan external link ke CSS Anda jangan menggunakan @import.
- Pindahkan Java Script ke bagian bawah Akibat dari javascript diletakkan di atas adalah adanya blank screen berwarna putih yang lama saat loading dan tertundanya loading isi halaman. Java Script tidak akan bekerja apabila obyek yang dikenai efek script belum selesai diload. Contohnya apabila kita menambahkan tool tips di links-links kita. Apanya yang akan diberi tools tips, jika links itu sendiri masih diload oleh browser. Belum lagi loading CSS dari tool tips itu sendiri.
- Hindari CSS expressions
CSS expressions dikenalkan pertama kali di Explorer 5.0 dan memperbolehkan kita untuk memanggil JavaScript expression ke dalam CSS. Sebagai contohnya adalah CSS expression untuk menentukan posisi elemen div berdasarkan uskuran browser. Menjanjikan memang, tapi silahkan Anda coba sendiri di browser Anda.
Berikut contohnya:
- #myDiv {
- position: absolute;
- width: 100px;
- height: 100px;
- left: expression(document.body.offsetWidth - 110 + "px");
- top: expression(document.body.offsetHeight - 110 + "px");
- background: red;
- }
CSS expressions are a powerful (and dangerous) way to set CSS properties dynamically.Masalah yang timbul dengan penggunaan CSS expression adalah, CSS expression ini dijalankan berkali-kali, lebih dari yang diharapkan. Tidak hanya dijalankan saat halaman dirender dan diresize tetapi juga saat halaman di scroll bahkan saat user mengerakkan mouse di halaman web tersebut.
High Performance Web Sites by Steve Souders
- Buat JavaScripts and CSS external
Alasan membuat Script dan CSS external adalah agar dapat dicache
oleh browser. Dengan demikian halaman akan cepat diload apabila user
kembali lagi ke halaman kita.
- <link href="style/style.css" rel="stylesheet" type="text/css" />
- <script src="contoh_javascript.js?t=1179019634"></script>
- Mengurangi DNS lookups Alasan utamanya adalah DNS lookup bisa menghalangi browser untuk melakukan parallel downloads.
- Perkecil ukuran file Java Script Dengan salah satu javascript compression tool di bawah ini, Anda bisa menghilangkan whitespaces yang tidak berguna dari file javascript. Dengan demikian ukuran file menjadi kecil dan akan mempercepat waktu download. Dengan tool tersebut Anda juga dapat menghilangkan komentar pribadi terhadap script yang telah Anda buat.
- Menghindari redirects Berikut gambaran waktu yang dibutuhkan untuk redirect.
- Hilangkan duplicate scripts Jangan meng-include script lebih dari sekali. Atau Memasukkan include di fetch array yang akan diload sebanyak x data.
- Matikan ETags Entity tags (ETags) adalah suatu mekanisme yang digunakan oleh web server dan browser untuk memvalidasi komponen cached.
- buat AJAX bisa di-cache dan kecil Ajax memang pada awalnya didesain untuk meload content tertentu tanpa meload halaman secara keseluruhan. Tapi sekarang sepertinya lebih mengarah ke segi interaktifnya. Memang bisa load data tanpa harus refresh page, tapi coba lihat Yahoo mail beta yang loadingnya lama banget. Penulis lebih suka cek email lewat wap di Opera. Atau Gmail yang banyak lebih suka mengakses lewat Thunderbird atau Outlook. Mungkin cuma bagus yang punya jaringan pita lebar kali.
.
Dan kenyataanya Java Script menghalangi browser melakukan parallel downloads dan menghalangi rendering semua content yang berada di bawahnya (CSS, HTML, image, dll). Pada keadaan normal (tidak ada Java Script) image akan didownload secara parallel sedangkan jika ada Java Script di bagian atas maka Java Script akan menghalangi proses ini, sampai keseluruhan kode java script selesai diload.
Untuk menghindari hal ini sebisa mungkin pindahkan java script ke bagian yang paling bawah. Tentunya tidak melupakan perimbangan agar java script tersebut bisa bekerja.
Berikut tool yang bisa digunakan untuk memperkcel ukuran java script Anda:
- http://crockford.com/javascript/jsmin
- http://dojotoolkit.org/docs/shrinksafe
Akibatnya adalah extra HTTP requests (hanya di IE) dan eksekusi script yang berulang. Akibatnya loading halaman menjadi lama. "Akan tetapi kenyataanya sekarang 2 dari 10 website terkemuka masih melakukannya. *Steve Souders "
0 comments:
Post a Comment
TERIMAKASIH ATAS KOMENTARNYA.
Kapan-kapan komentar disini lagi ya?????