Wednesday, September 9, 2015

Meningkatkan Performance Aplikasi Web Dengan Nodejs

Aplikasi web menjadi salah satu peluang bisnis yang menjanjikan pada sekarang ini. Untuk saat ini, ada banyak sekali teknologi untuk membangun aplikasi tersebut diantaranya ASP.NET, PHP JSP, dan yang lainnya. Tetapi, ada satu aplikasi web yang dapat menjadi alternatif yang dapat diandalkan kemampuannya dalam meningkatkan performance, yaitu Nodejs. Apa itu Nodejs? Berikut ini akan kami uraikan secara ringkas semua yang yang berkaitan dengan Nodejs.
Apa itu Nodejs?
Nodejs pertama kali dikembangkan oleh Ryan Dahl. Framework ini dibuat untuk memperoleh performance aplikasi web yang tinggi dan mengoptimalisasikan lingkungan concurrent yang tinggi pula. Framework Nodejs memungkinkan bekerja dengan keandalan tinggi dan dengan I/O non-blocking. Tujuan dari non-blocking ini untuk menghindari proses waiting yang lama dan mengurangi beban CPU.
Secara teknis, Nodejs dibangun menggunakan C/C++ dan berjalan di atas framework Javascript V8, framework yang dikembangkan oleh Google dan bagian dari sistem inti browser Chrome. Nodejs berisi framework yang didalamnya sudah terdapat web server sehingga kita sudah tidak perlu menggunakan web server lainnya seperti Apache dan IIS. Bahasa pemrograman yang digunakan pada Nodejs adalah Javascript. Portal resmi Nodejs dapat dikunjungi di alamat website http://www.nodejs.org.
Lalu, apa kelebihan dari nodejs? Secara umum, Nodejs berjalan di atas V8 Javascript Interpreter untuk menjalankan kode Javascript. Untuk menjaga performance tetap tinggi, Nodejs menerapkan solusi event-driven. Fitur-fitur yang ditawarkan oleh Nodejs antara lain:
  • Konsumsi memori yang kecil.
    Hampir sebagian besar web server menghadapi masalah concurrent request yang tinggi untuk menangani user secara bersama-sama. Untuk penyelesaian masalah ini, umumnya web server menerapkan multiple thread sebagai solusi yang memungkinkan satu koneksi ditangani oleh satu server thread. Kita sudah mengetahui bahwa penggunaan thread ini akan mengalokasi memory stack. Semakin banyak thread yang berjalan, maka penggunaan konsumsi memori juga semakin meningkat. Jika jumlah user meningkat, hal ini akan menjadi tidak bagus. Nodejs mempunyai cara berbeda dalam masalah ini. Pendekatan yang dilakukan adalah event driven berbasis infinite event loop dalam satu thread. Dengan solusi ini, penggunaan memori akan berkurang.
  • Operasi Non-Blocking
    Arsitektur Node yang dibangun dengan pendekatan non-blocking merupakan fitur utama dari framework Nodejs. Dengan pendekatan ini, ketika kita ingin mengakses database, membaca data pada file, atau mengirim data melalui Socket, kita harus membuat fungsi callback. Setelah melakukan eksekusi kode, Nodejs akan melakukan pekerjaan lain sampai data tersedia, baik pekerjaan itu sukses atau tidak, sehingga kita dapat mengontrolnya kembali.
  • Penggunaan CPU yang lebih kecil
    Nodejs sangat peduli terhadap kinerja CPU. Pada operasi yang melibatkan banyak thread, server akan meningkatkan penggunaan CPU ketika melayani permintaan dari user. Pendekatan inilah yang menimbulkan penggunaan CPU yang tinggi. Nodejs menghindari permasalah di atas dengan single thread yang memanfaatkan event loop dan callback. Nodejs dapat melakukan skalabilitas dengan memanfaatkan load balancer atau proxy server.
Instalasi
Nodejs mendukung platform Linux, Windows, Mac, dan Unix. Sebagai ilustrasi, berikut cara instalasi Nodejs pada Linux Ubuntu dan Windows.
Instalasi Linux.
  • Mula-mula kita harus menginstal kebutuhan library development termasuk compiler. Melalui console, lakukan instalasi library pendukung yang diperlukan.
    sudo apt-get  -y  install build essential g++ libssl-dev 
  • Selanjutnya, download file Nodejs. Misalnya, Anda akan menginstal di folder tmp, maka buat foldernya.
    mkdir  /tmp/nodejs 
    cd/tmp/nodejs        
  • Kemudian download file Nodejs. Misalnya, Anda mendownload Nodejs versi 0.6.14, berikut ini cara mendownload-nya (ganti versi sesuai dengan kebutuhan) dan mengekstraknya.
    wget  http://nodejs.org/dist/v0.6.14/node-v0.6.14.tar.gz  
    tar  -zxvf  node-v0.6.14.tar.gz   
  • Kemudian, lakukan konfigurasi dan instalasi
    cd node-v0.6.14  
    ./configure          
    make                     
    sudo make install  
  • Selanjutnya, sistem akan melakukan instalasi. Jika sukses, Anda dapat mengeceknya dengan mengetik script berikut:
    node  -v   
  • Kemudian akan ditampilkan versi dari Nodejs.
  • Langkah terakhir, instalasi npm. Tool ini berguna untuk menginstal module-module yang ada pada Nodejs. Kita lakukan dengan menggunakan curl. Jika Anda belum menginstalasi curl, Anda dapat melakukannya melalui console berikut.
    sudo apt-get install curl
  • Setelah itu, instalasi npm
    curl http://npmjs.org/install.sh | sudo sh                          
    jika sukses, Anda dapat mengeceknya dengan mengetik script berikut ini.
    npm  -v           
    intsalasi Nodejs pada Linux Ubuntu selesai. 
Khusus untuk platform Windows, Anda dapat mendownload instalasinya di website http://nodejs.org/dist/v0.6.14/node-v0.6.14.msi. Sedangkan untuk Mac, Anda dapat mendownloadnya di website http://nodejs.org/dist/v0.6.14/node-v0.6.14.pkg.
Setelah selesai men-download file instalasi, jalankan file tersebut dan diikuti petunjuk instalasinya pada kotak dialog instalasi. Jika sukses, jalankan console dan ketik script berikut ini.
node -v 
Kemudian akan ditampilkan versi dari Nodejs. Artikel kali ini cukup membahas tentang apa itu nodejs dan instalasinya. Pada artikel mendatang, insya Allah akan kita bahas Nodejs lebih lanjut. Jadi, jangan sampai terlewatkan.
Oleh: Agus Kurniawan/PC Media http://mojokertocyber.com/cyber-tech/web-design/139-meningkatkan-performance-aplikasi-web-dengan-nodejs.html