我正在使用 Node JS 服务器 (0.10.30) 及其集群功能。每次工作人员终止时,我都会捕获“退出”事件并重新启动新工作人员。我还想记录(在主集群上)工作人员被终止的原因,例如异常或致命错误。
怎么做?
我的 app.js 文件看起来像这样:
var cluster = require('cluster');
var numCPUs = 2;
if (cluster.isMaster) {
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
}
cluster.on('exit', function(worker, code, signal) {
console.log('worker %d died. Starting a new worker:', worker.id);
cluster.fork();
});
} else {
var domain = require('domain');
var d = domain.create();
d.on('error', function(er) {
console.error('error: ', er.stack);
// I never get the memory fatal error here
});
d.run(function() {
// The memory runs out in an async call
});
}
谢谢, 埃雷兹