cluster modülü
- Node.js kursu
- İleri seviye
- Ders 1/83
- 5 dk
cluster modülü ile çok çekirdek kullanmayı öğrenirsin.
Cluster modülü nedir?
Node.js tek iş parçacıklı (single-threaded) çalışır; bu yüzden tek bir CPU çekirdeğini kullanır. cluster modülü, bir ana süreç (master) ile birden çok işçi süreç (worker) oluşturmanı sağlar. Her işçi ayrı bir süreçtir ve gelen bağlantıları paylaşır.
Böylece 8 çekirdekli bir makinede 8 işçi çalışır ve uygulaman tüm çekirdekleri kullanır. cluster, Node.js'in yerleşik modülüdür; require("cluster") ile içe aktarılır. Sunucu performansını artırmanın en kolay yollarından biridir.
Ana süreç ve işçi süreçler
cluster modülünde iki rol vardır. Ana süreç (master) işçileri başlatır ve izler; istekleri kendisi işlemez. İşçi süreç (worker) asıl işi yapar: sunucuyu dinler, istekleri yanıtlar.
Ana süreç cluster.fork() ile işçi başlatır. Her işçi ayrı bir süreç olduğu için biri çökse bile diğerleri çalışmaya devam eder. Bu, yüksek erişilebilirlik (high availability) sağlar.
Uygulama Cluster'ı içe aktar ve türünü yaz
cluster modülünü require ile içe aktar. typeof cluster sonucunu console.log ile yaz.
Başlangıç kodu
// cluster modülünü içe aktar
// türünü ekrana yazÖrnek çözüm
const cluster = require("cluster");
console.log(typeof cluster);Beklenen çıktı
object
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Cluster nasıl içe aktarılır?
const cluster = require("cluster")- const cluster = require("cluster") Doğru cevap
- import cluster from "node"
- const cluster = require("http")
- const cluster = new Cluster()
Açıklama: cluster, require('cluster') ile içe aktarılır.
2 Modül adını tamamla
const cluster = require("____")
const cluster = require("cluster")
Açıklama: cluster modülü require("cluster") ile yüklenir.
3 Parçayı rolüne eşle
| Kavram | Anlamı |
|---|---|
cluster.isMaster |
Ana süreç mi? |
cluster.fork |
İşçi başlatır |
cluster.worker |
Mevcut işçi |
require("cluster") |
Modülü içe aktarır |