Nedir MongoDB?
MongoDB ilişkisel olmayan yani NoSQL veritabanı. Peki ne demek bu ilişkisel olmayan? Yani düşünün ki veritabanı var, ama içinde ne tablo var, ne transactions (select, insert, update, delete gibi işlemler) var. Peki nasıl oluyor bu iş derseniz şöyle ki; MongoDB’yi benim anladığım JSON formatında verileri Array(dizi) olarak tutan bir veritabanı olarak düşünebiliriz. Yani bildiğimiz JSON formatı olduğu için çekilen verileri JSON teknikleri ile sayfaya dökebiliyoruz. Peki neden MongoDB derseniz, en önemli sebep kesinlikle HIZ. Popüler Big Data (Büyük Veri) işlemlerde büyük hız avantajı sağlıyor. Hız isteyenler ve büyük veri ile çalışanlar kesinlikle geçmeli yani. Bu bana MS Access’ten, MySQL’e geçtiğim zamanı hatırlattı. Zamanında Access yeterliyken, internet hızlandıkça, veriler arttı, bu oldukça da Access yetmemeye başladı ve Mysql’e geçildi. Aynı süreç henüz gerekmesede ileride MongoDB için yaşanabilir. Bunu ancak zaman gösterecek.
İkinci olarakta NodeJS ile devam edelim.
Nedir Node.js?
Node.JS sunucu tarafında çalışan(server-side) bir framework. Yani bir programlama dili değil. Amacı bir nevi sunucuda JS çalıştırmak. Bunu örnekle açıklarsam daha kolay olacak sanırım. Örneğin siz bir javascript kodu koyduğunuzda sitenize, kullanıcı sitenize girer ve tarayıcısı destekliyor ise o JS kodu çalışır ve işlemler gerçekleşir. Node.JS ise bunu sunucu tarafında yaparak kullanıcının Tarayıcısından bağımsız çalışmasını sağlıyor. PHP nasıl siteye her giren için aynı sonucu veriyor, sunucu üzerinde yorumlanıp sonuç herkese aynı sunuluyor ise buda öyle birşey. Bu sayede HTML5 ile dahada önem kazanan JS herkeste sorunsuz çalışır hale gelmiş oluyor. Node.JS’in bir diğer büyük avantajı ise HIZ. Apache, ISS vs gerektirmiyor. Node.JS kurduktan sonra, 3-4 satır kod ile HTTP server haline getirebiliyorsunuz bilgisayarınızı veya sunucunuzu.
Dikkatinizi çektiyse iki yeni teknolojide de HIZ vurgusunu yaptım. Katıldığım bir etkinlikte söylendiğine göre LinkedIn son tasarım değiştirdiğinde aynı zamanda Node.JS ve MongoDB ikilisine geçiş yapmış, trafiği 2 kat artmasına rağmen sayfa açılış hızı ise 5 kat artmış. Bu muhteşem bir fark.