Отладка процессов Node.js с помощью cluster.fork()

У меня есть код, очень похожий на пример из документации Cluster на http://nodejs.org/docs/v0.6.0/api/cluster. .html, а именно:

var cluster = require('cluster');
var server = require('./mycustomserver');
var numCPUs = require('os').cpus().length;

if (cluster.isMaster) {
  var i;
  // Master process
  for (i = 0; i < numCPUs; i++) {
    cluster.fork();
  }
  cluster.on('death', function (worker) {
    console.log('Worker ' + worker.pid + ' died');
  });
} else {
  // Worker process
  server.createServer({port: 80}, function(err, result) {
    if (err) {
      throw err;
    } else {
      console.log('Thread listening on port ' + result.port);
    }
  });
}

Я установил инспектор узлов и попытался использовать как его, так и плагин Eclipse V8, подробно описанный на https://github.com/joyent/node/wiki/Using- Eclipse-as-Node-Applications-Debuggerдля отладки моего приложения, но похоже, что я не могу подключить отладчик к экземплярам разветвленного кластера, чтобы поставить точки останова в интересной логике сервера — я могу отлаживать только часть приложение, которое порождает кластерные процессы. Кто-нибудь знает, могу ли я на самом деле сделать такую ​​вещь, или мне придется реорганизовать свое приложение, чтобы использовать только один поток в режиме отладки?

Я узел .js новичок, поэтому я надеюсь, что здесь есть что-то очевидное, что я упустил

19
задан Chris 13 March 2012 в 20:26
поделиться