Apa itu NGiNX ?

Facebooktwitterredditpinterestlinkedinmail

Nginx

(*baca engine x) adalah web server berbasis open source layaknya seperti Apache.

Memang terkesan tidak populer jika dibandingkan dengan Apache, namun popularitas Apache dirasa belum mampu untuk menangani web server dengan High Trafic.

Pada 2008 yang lalu dalam sebuah acara konferensi wordpress dunia, Wordcamp SF di tahun 2008, salah satu narasumber, Chris Lea, mengatakan nginx itu 50 kali lebih cepat di banding apache. Wajar jika web server dengan trafik yang padat seperti kaskus, indowebster, kompas, wordpress.com dan lain-lain menggunakan nginx sebagai tulang punggung web servernya.

Kode sumber nginx ditulis oleh seorang warga negara Rusia yang bernama Igor Sysoev pada tahun 2002 dan dirilis ke publik pada tahun 2004. Nginx terkenal karena stabil, memiliki tingkat performansi tinggi dan minim mengonsumsi sumber daya. (sumber)

Sedangkan saya sendiri baru-baru ini sudah beralih dari Apache ke Nginx karena kebetulan sedang mengerjakan project yang mengharuskan menggunakan Nginx (*baca awalnya kepaksa, hehe). Tapi setelah mencoba beberapa bulan, efeknya luar biasa, It’s Powerfull and I Like it, recommended gan :), dan akhirnya keterusan deh nyaman dan menyenangkan.

Memang awalnya akan terasa ribet karena beberapa konfigurasi yang tidak biasa seperti Apache (intinya karena belum terbiasa).

Setelah menggunakan Nginx ada beberapa hal yang dapat saya simpulkan kelebihan Nginx dibandingkan Apache :

1. Performa

Apache memiliki jutaan fungsi sedangkan yang digunakan itu hanya 6 saja. Yang mana 6 fungsi ini sudah ada dalam nginx.

Lalu sampai sejauh manakah kemampuan Nginx untuk menghemat memori jika dibandingkan dengan kemampuan Apache?

Bob Ippolito membuktikan dengan pengujian, Bob memiliki sebuah server yang dipersiapkan untuk menangani sepuluh juta request setiap harinya, ini berarti server tersebut diharuskan menangani beberapa ratus request per detiknya. Ketika Bob mengujinya dengan menggunakan Nginx (setelah berbagai konfigurasi dan tweak), puncak tertinggi penggunaan memori hanyalah 15MB saja dan hanya memanfaatkan 10% resource CPU.

Dengan beban yang sama, lalu diujikan kepada Apache ternyata Apache gagal akibat menjalankan terlalu banyak thread. Jumlah memori yang terpakai adalah 400MB untuk semua stack thread. Dan bahkan terjadi memory leak sekitar 20MB setiap jamnya.

Intinya nginx memiliki performa jauh-jauh lebih baik ketimbang apache.

2. Arsitektur Nginx

Salah satu yang membuat nginx menjadi sangat cepat adalah jenis arsitektur nginx itu sendiri. Jika di bandingkan dengan apache yang process based, nginx menjadi jauh lebih unggul karena event-based nya. Sehingga mampu memanfaatkan seminimal mungkin thread untuk memproses request dari user, sehingga akhirnya memori yang terpakai oleh Nginx menjadi minimal. Karena memori yang dipakai sangat kecil, maka hasilnya server menjadi ringan dan jauh-jauh lebih responsif (memiliki respon super cepat).

3. Fitur

Dalam wikivs tercatat bahwa nginx pun memiliki fitur-fitur yang lengkap sesuai kebutuhan sehari-hari, menangani trafik yang sangat padat. Berikut adalah daftar fitur yang memang sesuai kebutuhan :

  • Static file serving.
  • SSL/TLS support.
  • Virtual hosts.
  • Reverse proxying.
  • Load balancing.
  • Compression.
  • Access controls.
  • URL rewriting.
  • Custom logging.
  • Server-side includes.
  • Limited WebDAV.
  • FLV streaming.
  • FastCGI.

4. Kemudahan

Ease of Use, kemudahan dalam penggunaan. Menjadi salah satu keunggulan dari nginx. Bagi Anda yang terbiasa mengkonfigurasikan apache, tidak terlalu berbeda jauh dengan nginx. Bedanya konfigurasi di nginx jauh lebih simpel ketimbang apache. Dan sudah banyak tools yang disediakan untuk mempermudah installasi nginx, maupun untuk optimasinya, mempersiapkan nginx untuk bisa digunakan melayani trafik yang padat merayap.

5. Dapat dipergunakan diberbagai Platform OS

  • FreeBSD 3 — 10 / i386; FreeBSD 5 — 10 / amd64;
  • Linux 2.2 — 4 / i386; Linux 2.6 — 4 / amd64; Linux 3 — 4 / armv6l, armv7l, aarch64;
  • Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;
  • AIX 7.1 / powerpc;
  • HP-UX 11.31 / ia64;
  • Mac OS X / ppc, i386;
  • Windows XP, Windows Server 2003.

Oke itu ulasan singkat mengenai apa itu NGiNX

 

Facebook Comments