Pages

Tuesday, April 10, 2012

Cara Mengurangi Penggunaan Bandwidth Website

Artikel kali ini akan saya bahas tentang bagaimana cara mengurangi penggunaan bandwith pada website anda.
Mungkin bagi anda pengguna hosting dengan unmetered bandwdith tidak perlu merasa risau dengan penggunaan bandwith tiap bulannya, namun bagi beberapa hosting yang masih memberlakukan metered bandwidth seperti premium hosting dan vps akan mengalami masalah yang berbeda terutama jika memiliki jumlah visitor yang banyak dan kejadian pada bulan-bulan sebelumnya sudah mengalami kehabisan stok bandwidth.
Pada umumnya, pihak hosting memberikan kuota bandwidth berdasarkan disk space yang anda sewa, yang umumnya berupa keliptan 20-100x. Menurut pengalaman saya, shared hosting (baik yang biasa ataupun premium) jarang mengalami kehabisan bandwidth dikarenakan kuota yang unmetered atau daya tampung server yang kecil. Daya tampung yang saya maksud disini adalah kemampuan maksimal server untuk diakses hingga batas tertentu (umumnya jika visitor terlalu banyak dan server tidak kuat, akan terjadi auto-suspend).
Popularitas website anda layaknya pajak, semakin banyak visitor semakin banyak yang harus anda bayar. Dalam hal ini adalah bandwidth.
Saya sendiri pun pernah mengalami hal yang serupa dikarenakan terlalu banyak posting sehingga dalam satu hari dapat menghabiskan sekitar 25GB bandwidth. Namun untungnya hosting saya unmetered dan saya telah menggunakan CDN (Content Delivery Network) yang dapat mengurangi penggunaan bandwidth bulanan web saya hingga 60%.
Berikut ini cara-cara dan tips agar website anda tidak kehabisan stok beras bandwidth.

1. Gunakan Hosting Eksternal

Yang perlu anda hosting adalah images dan juga file lainnya seperti video, dokumen, dll. Hal ini perlu dilakukan karena pada umumnya sebuah halaman website memiliki konten gambar yang ukurannya jauh lebih besar daripada konten teks. Apalagi bagi anda yang suka host file-file berukuran besar dan memperbolehkan pengunjung untuk men-download secara langsung dari web anda yang tentunya hal ini akan menguras bandwidth anda. Dibawah ini beberapa hosting yang dapat anda gunakan, baik free maupun berbayar.

- Images (Free)

  • Tinypic.com
  • Imgur.com
  • Flickr.com
  • ImageShack.us
  • Photobucket.com
  • Google Picasa Web Album

- FIles (Free)

  • Mediafire.com
  • 4Shared.com
  • Box.net
  • 2Shared.com
  • YouTube.com (Video)

- Berbayar (Paid)

  • Amazon Simple Storage Service - http://aws.amazon.com/s3
Namun perlu diingat bahwa image hosting seperti imageshack akan diblokir oleh internet korporasi, jadi mungkin gambar yang berusaha anda tampilkan tidak muncul pada pengguna internet korporasi. Jadi anda dapat menggunakan cloud storage seperti Amazon S3 ataupun CDN, semua keputusan ada ditangan anda.
Tahukah anda bahwa favicon.ico selalu direkues tiap kali website anda diakses ? Yup, favicon.ico adalah sebuah ikon kecil berukuran 16 x 16px atau 32 x 32px yang berguna sebagai ikon atau lambang. Yang perlu anda ingat adalah favicon harus berukuran lebih kecil dari 2000 bytes atau sekitar 2KB agar dapat di-cache oleh browser. (Menurut data dari YSlow dan Google Chrome)
Jangan sekali-sekali menggunakan favicon berukuran besar karena ‘benda’ tersebutlah yang pertama di-download oleh browser.

2. Aktifkan Kompresi HTTP (Gzip/Deflate)

Setelah anda menggunakan hosting eksternal, masalah belum sepenuhnya terselesaikan. Sisanya adalah teks yang masih belum dioptimalkan, yaitu dengan cara kompresi. Sama halnya ketika kita membuat archive yang tujuannya adalah untuk memperkecil ukurannya, begitu juga kompresi HTTP hanya bedanya disini adalah teknik yang digunakan.
Teks yang saya maksud disini adalah CSS, HTML, dan JS yang ketiganya dapat dikompres sedemikian rupa sehingga dapat menghemat penggunaan bandwidth hingga 60-70%.
Selain dapat menghemat penggunaan bandwidth, teknik ini juga dapat mempercepat loading website anda dikarenakan konten yang harus di-download lebih kecil.
Untuk menggunakan fitur ini silahkan gunakan plugin cache seperti W3 Total Cache ataupun sejenisnya dan bagi anda yang tidak ingin menggunakan plugin, anda dapat langsung menggunakan fitur mod_deflate untuk penggunaanya silahkan anda baca dokumentasi apache ( httpd.apache.org/docs/2.0/mod/mod_deflate.html ).

3. Gunakan FeedBurner

Website anda menawarkan RSS Feed ? Apabila iya, anda patut curiga bahwa RSS Feed salah satu tersangka penyebab menipisnya stok bandwidth. Hal ini dikarenakan akses kedalam RSS Feed sama halnya kita mengakses sebuah web. Bedanya hanya terletak pada kata ‘Syndication’ yang dapat diterjemahkan sebagai langganan.
Selain dapat menghemat bandwidth, anda juga dapat memanfaatkan fitur lainnya dari FeedBurner seperti data statistik, iklan (monetize), dll.

4. Optimalkan ukuran JavaScript dan CSS (Minify)

Yang terakhir adalah optimalisasi ukuran JavaScript dan CSS atau biasa disebut dengan Minify.
Apa yang dikamsud dimaksud dengan Minify* ? Minify adalah teknik kompresi JS dan CSS ataupun sejenisnya dengan cara menghilangkan benda-benda keramat seperti spasi, garis miring, enter (breaking space), dan hal-hal yang tidak diperlukan. Sehingga file anda menjadi bersih dari gangguan, namun umumnya hasil dari minify akan sulit dibaca oleh manusia karena tidak ada spasi maupun enter (apabila menggunakan YUI Compressor). Namun tidak masalah, karena yang membaca adalah robot (browser). *) Pengertian minify menurut saya dan kurang lebih memang begitu.
Teknik minify atau software untuk minify yang paling terkenal dan mutakhir adalah YUI Compressor dan Minify dari groups google (groups.google.com/group/minify). Perbedaan yang paling mendasar adalah kemampuan dikeduanya, yang dari groups google lebih kompatibel dengan produk baru dan lebih ‘manusiawi’ (masih ada enter/breaking space-nya). Coba saja lihat CSS file-nya youtube, tidak ada spasi maupun enter-nya sama sekali.
Ini adalah teknik tingkat lanjut dan bagi anda yang tidak begitu ahli harap membaca referensi lain terlebih dahulu sebelum melakukan hal ini (walaupun sebenarnya hal ini sama dengan copy-paste).
Cara paling mudah adalah =>> plugin… W3 Total Cache (bukannya saya promosi, tapi memang dari pengalaman saya bertahun-bulan, plugin ini sangat menghemat waktu, bandwidth, dan sumber daya server).

Sekiranya tips di atas dapat mengurangi penggunaan bandwidth website anda hingga 60% atau bahkan lebih.

Sumber Referensi: 1. Yahoo! YSlow. 2. Yahoo! YUI. 3. Yahoo! Developer Network. 4. Wordpress Codex. 5. Google Chrome Audits. 6. SNSDaily Staff.

No comments:

Post a Comment

Harap menggunakan bahasa yang baik dan benar serta jelas dalam komentar Anda.