
Web development semakin berkembang dari waktu ke waktu. Teknologi baru selalu bermunculan setiap harinya. Dari sisi back-end, terdapat dua bahasa pemrograman yang cukup mendominasi yaitu NodeJS dan PHP. PHP yang menjadi tulang punggung duni per-website-an diprediksi akan tergerus NodeJS yang merupakan pemain baru. Mampukah PHP tertap bertahan? Atau justru NodeJs akan berhasil menggantikan PHP?
Pembahasan ini sebenarnya cukup “keramat” untuk diperbincangkan. Meskipun, pada awal kemunculannya Javascript hanya pada sisi front end,lambat laun merambah ke back-end dan menjadi kompetitor tangguh bagi PHP. Terlebih beberapa artikel pergeseran teknologi dari PHP ke NodeJS beberapa kali ter-blow up. Bukan hanya dalam negeri, artikel seperti “Which is better for back-end – PHP or Node js?” , “Is Node js killing PHP?” atau “Is NodeJS eating PHP Market?” sering menjadi topik perbincangan developer luar negeri.
Sebagian orang akan mengganggap hal ini sebagai keuntungan. Tipe-tipe ini biasanya vendor besar yang sering mendapat ‘jatah’ project dari pemerintahan. Namun, tentu saja tidak sedikit yang akan menganggap hal ini menjadi malapetaka, karena project mereka akan otomatis berpindah tangan ke vendor yang lebih mampu. Jelas hal ini sebenarnya konsep yang salah kaprah. Jika ada teknologi baru yang lebih baik, mengapa tidak memilih yang lebih mudah?. Namun, benarkan NodeJS lebih baik dari PHP? Dan apakah PHP akan terus tergerus NodeJS? Sampai-sampai WordPresspun akan berpindah haluan ke NodeJS.
NodeJS VS PHP
PHP merupakan bahasa pemrograman paling umum yang dalam pengembangan webiste. Bahasa pemrograman ini dapat berperan sebagai compiler sekaligus interpreter. PHP pertama kali rilis pada tahun 1995. Saat ini versi terbaru PHP adalah 7.0.16 dan 7.1.2 yang resmi rilis pada tanggal 17 Februari 2017.
Nah, NodeJS sebenarnya bukan merupakan bahasa pemrograman. Jadi, salah jika seseorang mengatakan bahasa pemrograman NodeJs. NodeJS merupakan suatu framework yang akan membawa bahasa pemrograman JavaScript ke sisi back-end. Untuk dapat menggunakan NodeJs kita harus paham bahasa pemrograman.
Dari segi popularitas, NodeJS lebih unggul dari PHP. Sejak 2014 Framework NodeJS merajai kepopuleran bahasa pemrograman dengan angka 49,6% jauh melebihi PHP. Apa keuntungannya? Semakin populer suatu framework maka semakin dokumentasi akan semakin banyak. Hal ini akan mempermudah kita ketika mengalami kendala pengembangan proyek.

Sebaliknya, tingkat pengguna bahasa pemrograman PHP semakin berkurang dari waktu ke waktu. Tingkat penurunan yang terjadipun cukup signifikan yakni mencapai 7% . Di sisi lain , pengguna NodeJS meningkat tajam 18% selama 4 tahun. Dengan ini, terbukti bahwa developer-developer website mulai beralih ke NodeJS

Selama proses development, PHP memerlukan web server. Meskipun server ini merupakan bawaan, namun hal ini akan memakan banyak resource server. Penggunaan server tambahan seperti nginx tetap diperlukan untuk meningkatkan performa kecepatan PHP. Sebaliknya, NodeJS merupakan tipe single-fighter yang mampu berdiri sendiri tanpa memerlukan web server lain. NodeJS memiliki waktu eksekusi yang lebih baik dari PHP terutama dalam penambahan angka. Namun PHP memiliki waktu eksekusi yang lebih baik dalam hal operasi string, pengisian array, MySQL, dan membaca file.

Perfoma NodeJS vs PHP
Untuk kasus multi-tasking, NodeJS jauh lebih handal daripada PHP. Misal kita memiliki dua task yakni mengambil data dari database, dan menghapus file. Jika kita menggunakan PHP, proses ini akan dilakukan berurutan. Hapus file akan dilakukan setelah pengambilan data selesai. Namun, jika kita menggunakan NodeJS kedua hal ini dapat dilakukan bersamaan. Hasilnya, bisa jadi file terhapus duluan sebelum pengambilan data selesai.

Hal ini tidak berlaku untuk multithread. NodeJS menggunakan konsep single thread, artinya hanya akan ada satu proses yang berjalan sepanjang waktu, berbeda dengan PHP yang berbasis multi-threaded. Misal terdapat empat orang mengunjungi web kita. Dalam PHP, proses ini dibuat empat thread dimana setiap pengunjung dilayani oleh 1 thread khusus. Setiap thread akan diproses dengan sistem antrian seperti sebelumnya. Sedangkan di Node.js, empat pengunjung itu akan di layani oleh 1 thread saja. Thread secara bergantian berpindah dari satu proses ke proses lain tanpa harus menunggu proses yang satu selesai.

Sanggupkah NodeJS Menggantikan PHP?
Sampai saat ini, kita belum bisa menyimpulkan bahwa NodeJS akan menggantikan PHP. Penggunaan NodeJS dan PHP sangat bergantung pada jenis aplikasi yang akan kita kembangkan. Pada akhirnya yang terjadi antara NodeJS dan PHP bukanlah kompetisi melainkan sinergi. Sebagai contoh, untuk project yang bersifat real-time, NodeJS lebih cocok untuk dipakai. Sebaliknya, tidak semua hosting mendukung NodeJs, saat itulah kita harus memilih menggunakan PHP.
Selamat bereksplorasi ! #HappyEnjoyneering!