Node js nedir?

Node JS, Javascript ile server side uygulamalar yazabileceğimiz, Joyent tarafından 2009 yılında geliştirilmeye başlanmış bir framework’dür.

Öncelikle V8 javascript motorundan biraz söz edelim. V8 daha öncede belirttiğimiz gibi chrome web tarayıcılarınında üzerinde çalıştığı google tarafından geliştirilen , C/C++ ve javascript dilleriyle geliştirilen esasında yaptığı iş javascript kodunu makine koduna (native machine code) çevirmek olan bir javascript motoru. NodeJS de bu yüksek performanslı javascript motorunun üzerine inşa edilmiş bir platform.

NodeJS platformunda iş parçacığı mantığının yerine her bir olayın sıraya atılarak işlenmesi söz konusu. Non-blocking I/O yapısı ile birleşince bu yapı yüksek performanslı uygulamalar çıkarmamıza, düşük özellikli sunucularla bile milyonlarca web istemini (web request) karşılamamıza imkan sağlıyor. Javascript’in doğasında olan asenkron programlama yapısıda bu modele bire bir uyum sağlıyor.

NodeJS ’in çalışma yapısının bir örnekle açıklamaya çalışalım. Bir fast-food restorantında tek bir personelin çalıştığını ve sipariş verdiğinizde, çalışanın ödemenizin alınmasından, yiyeceğinizin hazırlanmasına kadar yani sizin işiniz tamamen bitene kadar başka bir sipariş almadığını varsayalım. Bu durumda oluşacak sırayı gözünüzde canlandırın. Böyle bir modelde daha fazla sipariş almanın tek yolu çalışan sayısını arttırmaktır.

Hatta ve hatta bir noktada çalışan sayısının artması bile bizi istediğimiz çözüme ulaştırmayacaktır. Burada sipariş alma bloklama gerektirmeyen bir işlemken yiyeceğin hazırlanma süreci bloklama gerektiren bir iştir. Bloklama gerektiren bir işten dolayı bu yapıda tüm işlemler durmakta, bloklama yapan işlemin bitmesini beklemektedir.

Bloklama yapmayan (non-blocking) bir yapıda ise bloklama yapmayan işlemler işlenir bloklama yapan işlemler başlatılır ve sonuçları callback adı verilen geri dönüş metodları aracılığıyla elde edilir. Yiyeceğiniz hazırlandıktan sonra çağrılmanız callback’ler için verilebilecek güzel bir örnektir.

Yorumlar

Bu sayfa ait yorum bulunamadı. İlk yorum yapan siz olun.

Yorum ekle

Vazgeç