cluster.fork
- Node.js kursu
- İleri seviye
- Ders 2/83
- 5 dk
cluster.fork ile worker oluşturmayı öğrenirsin.
cluster.fork metodu
cluster.fork() metodu yeni bir işçi süreç başlatır ve bir Worker nesnesi döndürür. İşçi, ana sürecin kodunu çalıştırır; ama cluster.isMaster false olduğu için işçi bloğuna girer.
Tipik bir kullanım: CPU sayısı kadar işçi başlatmaktır. require("os").cpus().length çekirdek sayısını verir. Her işçi aynı portu dinler; cluster yükü aralarında dağıtır.
Worker nesnesi
cluster.fork() bir Worker nesnesi döndürür. Her işçinin benzersiz bir id'si, altında çalıştığı process'i ve bir send metodu vardır.
worker.send(msg) ile anadan işçiye mesaj gönderirsin. İşçi process.on("message") ile mesajı yakalar. Bu, IPC (süreçler arası iletişim) kanalıyla çalışır. Worker nesnesi ayrıca worker.process.pid ile süreç kimliğini verir; bu, loglama ve izleme için yararlıdır.
Uygulama fork metodunun türünü yaz
cluster modülünü içe aktar. typeof cluster.fork sonucunu console.log ile yaz.
Başlangıç kodu
// cluster modülünü içe aktar
// fork metodunun türünü yazÖrnek çözüm
const cluster = require("cluster");
console.log(typeof cluster.fork);Beklenen çıktı
function
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 İşçi başlatan metodu yaz
cluster.____()
cluster.fork()
Açıklama: cluster.fork() yeni bir işçi başlatır.
2 cluster.fork() ne döndürür?
- Bir dize
- Bir Worker örneği Doğru cevap
- Bir sayı (PID)
- undefined
Açıklama: cluster.fork() bir Worker örneği döndürür.
3 Parçayı rolüne eşle
| Kavram | Anlamı |
|---|---|
cluster.fork() |
İşçi başlatır |
worker.process |
Çocuk süreç |
worker.id |
Benzersiz kimlik |
worker.send |
İşçiye mesaj |