Page 45 - Majalah Berita Indonesia Edisi 89
P. 45
BERITAINDONESIA, Juli 2013 45YBERITA IPTEKSedangkan restoran Nginx punyacara sendiri. Saat seseorang memesanpizza, operator akan mencatat pesananlalu menutup telepon. Setelah pizzasudah siap, operator lalu menelepon sipemesan. Dengan cara ini, satu operator bisa melayani lebih banyak pesanandalam satu waktu.Pada restoran Apache, butuh banyakoperator atau 'thread' untuk melayanipemesan. Pada server, thread biasanyamenghabiskan memori. Semakin banyakthread yang aktif, semakin banyakmemori yang dibutuhkan. Itulah sebabnya, web server Apache tidak akanmengalami masalah bila hanya sedikitorang yang mengaksesnya. Tapi tatkalabanyak orang mengaksesnya sekaligusdalam waktu bersamaan, Apache menjadi lamban dan terancam crash/hangkarena kekurangan memori.Sedangkan pada Nginx, penggunaanmemori bisa diminimalkan karena bersifat event-based. Menurut pengalamansejumlah server administrator, Nginxbisa menangani ratusan request per detik tanpa harus menguras memori danCPU (lihat gambar 1.b dan 1.c). Bahkanjika Anda tidak mengharapkan serveruntuk menangani ribuan koneksi padasaat yang bersamaan, Anda masih dapatdiuntungkan dengan pemakaian memori yang sedikit dan server yang responsif. Nginx dapat digunakan dalam semua skala, mulai dari VPS kecil hinggacluster server dalam jumlah besar.Dari segi instalasi, Nginx sudah tersedia dalam beberapa bentuk. Bagi yangsudah paham dunia web server dan lihaimengetikkan perintah di konsol Linux,bisa memasang Nginx yang diunduhdari nginx.org. Namun bagi penggunaawam yang tidak ingin repot denganberbagai perintah Linux atau inginsekadar mencoba, bisa menggunakancPanel nginx integration plugin yakniNginx Admin (nginxcp .com) ataucPnginx (cpnginx.com). Keduanya memiliki nama yang hampir mirip dan ditujukan untuk server yang menggunakan cPanel. Nginx Admin tidak dipungut biaya alias gratis sedangkancPnginx berbayar (US$5 per bulan untuk lisensi perseorangan). Belakanganmuncul pula Nginx untuk Windowsyang bisa diunduh di winginx. com.Sedangkan dari segi penggunaan,Nginx bisa digunakan sebagai completeweb server atau sekadar reverse proxy.Dalam bentuk complete web server, fitur Apache seperti .htaccess menjadi tidak berfungsi dan mesti menggunakankode 'htaccess' a la Nginx. Sedangkanbila digunakan sebagai reverse proxy,Nginx dimanfaatkan untuk memprosesfile statis (javascript, html, image dancss), tanpa harus melalui/melibatkanApache (lihat gambar 1.a). Nginx terkenalsangat cepat dalam menangani file-filestatis karena didesain untuk itu.Saat Nginx digunakan sebagai reverseproxy, file .htaccess tetap bisa digunakankarena Apache tetap berfungsi sebagaiweb server. Kita pun bisa memilih apakahmembuat Nginx juga memproses file PHP(dynamic content) via PHP5-FPM atautetap membiarkan Apache yang memproses PHP. Apapun pilihannya, Nginxsebagai reverse proxy membuat bebanweb server bisa dibagi.Beban untuk file statis ditangani olehNginx dan beban aplikasi (dynamic content) ditangani oleh Apache. Nginx sebagai reverse proxy juga membuat serverlebih tahan terhadap serangan DOS. Sejauhini, Nginx lebih banyak digunakan sebagaireverse proxy atau load balancing daripadasebagai complete web server. cidNginx bisa digunakansebagai web serveratau reverse proxy.Kelebihan Nginx adalahsangat cepat dalammenangani file statisseperti javascript, html,image dan css.Fitur- Mampu menangani banyakkoneksi tanpa memakan banyakmemori. Cocok bagi Anda yangmenggunakan VPS kecil denganmemory dedicated 256M-512M- Kemampuan menjalankan filestatis, index file, dan auto indexing- Bisa dijalankan untuk proxydengan kemampuan caching.- Load Balancer- Fault Tolerance- TLS/SSL- Support FastCGI, SCGI, danuwsgi dengan kemampuan caching- Support virtual server (serverblock) berbasis nama domaindan ip- Support IPv6- Support kompresi gzip- Support URL Rewrite- Support Streaming FLV danMP4- Support limitasi untuk koneksi/request dari satu alamat- Keep-AliveKekurangan- Tidak mendukung pembacaan file .htaccess, kita harus mengonversinya terlebihdahulu ke dalam format konfigurasi Nginx. Lumayan merepotkan bagi yang terbiasadengan Apache- Belum didukung penuh oleh beberapa control panel server semacam webmin dankloxo. Untuk cPanel sudah ada Nginx Admin (nginxcp.com) atau cPnginx(cpnginx.com)““BENCHMARKNGINX VS APACHEKonsumsi memory (1.b)Kemampuan menangani request (1.c)Membuka 1 halaman web statis berukuran kecilEVENT-BASED & PROCESS-BASEDNGINX VS APACHE1.a