Ide Genius Ryan Dahl
Ryan Dahl punya ide sederhana tapi jenius: Kalau JavaScript berjalan cepat di browser berkat mesinnya, kenapa mesin itu enggak bisa dipakai di server?
-
Mesin V8 Google: Ryan Dahl mengambil V8 Engine, yaitu mesin yang dipakai browser Google Chrome untuk ngejalanin JavaScript.
-
Eksekusi di Server: Node.js adalah lingkungan yang memungkinkan V8 Engine berjalan di luar browser, yaitu langsung di server atau komputer biasa.
-
Hasil: Tiba-tiba, JavaScript bisa melakukan hal-hal back-end seperti ngobrol sama database dan ngurusin file di server.
Dengan Node.js, developer kini bisa pakai satu bahasa pemrograman (JavaScript) untuk ngembangin website dari depan (front-end) sampai belakang (back-end)—inilah yang sering disebut Full-Stack JavaScript.
III. Kenapa Node.js Super Cepat? Konsep Non-Blocking
Node.js enggak cuma keren karena pakai JavaScript, tapi juga karena cara kerjanya yang efisien. Ini adalah kunci mengapa server yang pakai Node.js bisa jadi sangat cepat.
Konsep Non-Blocking I/O (Input/Output)
-
Sistem Lama (Blocking): Bayangkan kamu pesan makanan di kasir. Kalau kasir (server) harus nulis pesananmu, lalu nunggu sampai pesanan itu selesai dimasak, baru dia bisa melayani orang berikutnya. Antrean (server) akan tertahan (blocking).
-
Node.js (Non-Blocking): Kasir (server) cuma nyatet pesananmu, lalu langsung layani pelanggan berikutnya. Pesananmu dikirim ke dapur (tugas I/O) dan server tidak perlu menunggu sampai tugas itu selesai. Ketika pesananmu jadi, dia akan memberitahu kasir.
Dengan sistem asinkron dan non-blocking ini, Node.js bisa menangani ribuan permintaan secara bersamaan tanpa melambat. Inilah yang bikin dia ideal untuk aplikasi web real-time seperti chat atau streaming.






