我很新的集羣中node.js中/ child_process模塊任何人都可以讓我知道我們如何創建一個主節點或者如何使節點成爲主節點?如何創建node.js的主節點
多數教程提到如何驗證,如果一個節點是主或工人(下面的代碼),但不知道如何創建主。
編輯:
var cluster = require('cluster');
var http = require('http');
var numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
// Fork workers.
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
}
cluster.on('exit', function(worker, code, signal) {
console.log('worker ' + worker.process.pid + ' died');
//cluster.fork(); ----------(2)
});
} else {
// Workers can share any TCP connection
// In this case its a HTTP server
//cluster.fork();-----------(1)
http.createServer(function(req, res) {
res.writeHead(200);
console.log("hello worldd");
res.end("hello worldd\n");
}).listen(8000);
}
編輯:我怎樣才能創建一個連續運行適當的子進程。如果我在上面的代碼中使用cluster.fork(1)創建新進程,則工作進程將立即生成並銷燬。如果我在上面的代碼中創建像(2)這樣的工作者,它將進入死亡和創造的無限循環。如果上述示例不明確,請提供任何代碼或鏈接,說明創建子進程的正確工作示例,並同時處理跨不同進程的多個請求。 非常感謝。
感謝您的輸入。我明白了你的觀點,這引出了另一個問題,我在問題中更新了這個問題。請看看它並提供你的見解。 – user3366706 2014-12-02 09:11:20
@ user3366706更新=) – lwang135 2014-12-02 09:16:49
你的意思是說,(1)是在正確的地方創建新的子進程和(2)如預期,如果自殺式/殺檢查後,右鍵是否行得通呢? – user3366706 2014-12-02 09:23:45