Sebelumnya, teman-teman, dalam teknologi terbaru dalam Web Development pasti sudah familiar dengan yang namanya pemograman PHP, dengan database relasionalnya MySQL, kemudian web server nya menggunakan Apache dan yang terakhir sistem operasi open-source Linux yang digunakan untuk keperluan hosting. Teknologi yang disebutkan tadi dinamakan LAMP yang berarti Linux Apache MySQL PHP. LAMP ini merupakan tandingan Mean Stack. Bicara tentang Mean Stack, apa sih itu Mean Stack. Berikut penjelasannya.
Untuk membuat teman-teman menjadi lebih paham, pada postingan ini akan dijelaskan satu per satu teknologi Mean Stack tersebut.
- MongoDB
Mungkin teman-teman mendengar kata MongoDB sepertinya belum familiar. Apakah itu sebuah RDBMS seperti MySQL atau bukan ya? atau mirip PostgreSQL kah? Dengan performa lebih cepat dibandingkan MySQL, MongoDB menawarkan sesuatu yang lain. Adapun nama-nama besar Foursquare, Disney, Forbes, Sourceforge ataupun Github telah menggunakannya. Penasaran ya guys? Yuk kita berkenalan lebih jauh dengan MongoDB, siapa tahu ke depannya teman-teman bisa jadikan alternatif yang bisa digunakan.
MongoDB merupakan database open source berbasis dokumen (Document-Oriented Database) yang awalnya dibuat dengan bahasa C++. MongoDB sendiri sudah dikembangkan oleh 10 generasi sejak Oktober 2007, namun baru dipublikasikan pada Februari 2009. Selain karena performanya 4 kali lebih cepat dibandingkan MySQL serta mudah diaplikasikan, karena telah tergabung juga sebagai modul PHP.
Database MongoDB sendiri merupakan database NoSQL, maksudnya MongoDB ini tidak sama dengan database lainnya seperti MySQL, MsSSQL, dll. NoSQL (singkatan dari Not Only SQL) sendiri adalah tipe database yang sangat berbeda dengan konsep RDBMS ataupun ODBMS. Perbedaan utamanya sendiri yaitu karena tidak mengenal istilah relation dan tidak menggunakan konsep skema. Kalau biasanya teman-teman menggunakan query ‘Join’, di sini tidak bisa menggunakannya karena setiap tabel berdiri sendiri tanpa tergantung dengan tabel lainnya alias independen.
- ExpressJS
Yang kedua ada ExpressJS, yaitu Javascript framwork yang populer dan diibaratkan sebagai PHP kalau di LAMP stack. ExpressJS ini menangani bagian sisi server atau bisa disebut dengan Back-end pada suatu aplikasi. Contoh kerja ExpressJS seperti mekanisme routing, manajemen session. ExpressJS ini kaya akan fitur-fitur yang mempermudah kita untuk membuat suatu Web App yang secure tapi cepat dalam pengerjaannya.
- AngularJS
Sekarang AngularJS, apa sih AngularJS ini? AngularJS adalah Javascript framework yang bersifat open-source yang dirilis oleh perusahaan raksasa Google pada tahun 2009. Konsep dari AngularJS ini untuk meningkatkan fungsi HTML dalam membangun Web App. Dahulu HTML hanya bisa membuat Web Static, tetapi sekarang bisa berfungsi untuk membuat Web App dengan menggunakan AngularJS.
AngularJS memang bukan library, dan sama seperti framework lainnya. AngularJS juga mempunyai konsep MVC (Model View Controller) meskipun cara eksekusinya yang berbeda.
- NodeJS
NodeJS merupakan platform untuk membangun Real-time Application. NodeJS dapat menangani event input-output server, dengan kata lain NodeJS dapat memungkinkan para developer Javascripts untuk membuat event-driven servers dalam JavaScript. Dengan menggunakan NodeJS, pemakaian memori lebih hemat.
Mengapa menggunakan NodeJS?
Pertama, untuk kinerja dan skalabilitas, NodeJS dapat menanganinya dengan cepat. NodeJS ini juga bagus untuk RESTful-API – Web Service yang mengambil beberapa parameter input dan mendapatkan data tanpa menggunakan resource yang besar. NodeJS dapat menangani ribuan proses data sekaligus. Berbeda dengan PHP yang semakin banyak menangani proses, maka semakin banyak resource yang dibutuhkan untuk mendapatkan response dari request yang diinginkan.



