Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/04/2011, 16:55
Avatar de Panino5001
Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
¿Porqué usar upstart o monit en node.js?

Estoy experimentando con node.js y, de este post http://www.forosdelweb.com/3809087-post6.html en el que Siedrix, que tiene bastante experiencia en el tema, recomienda el uso de upstart o monit para "mantener el proceso corriendo", me han surgido algunas dudas. Según lo leído e investigado, estas utilidades ayudan a arrancar de nuevo un server de este tipo:
archivo example.js
Código PHP:
var http = require('http');
http.createServer(function (reqres) {
  
res.writeHead(200, {'Content-Type''text/plain'});
  
res.end('Hello World\n');
}).
listen(8124"127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');
//setTimeout(function(){throw Error('foo');},15000); 
Pero veo que existen otros caminos para realizar esto. Por ejemplo, si en lugar de llamar de manera directa al archivo example.js lo llamamos indirectamente de esta manera:
archivo example2.js:
Código PHP:
var child_process = require('child_process');
var 
fs = require("fs");
var 
sys = require("util");
var 
MyProcess child_process.spawn(process.ARGV[0], ['example.js']);
sys.puts('iniciamos example.js');
function 
restart(){
    
MyProcess.kill();
    
MyProcess child_process.spawn(process.ARGV[0], ['example.js']);
    
sys.puts('reiniciamos example.js');
    
MyProcess.on('exit',function(code){sys.puts('se terminó la conexion. Code:'+code);restart();});
}
MyProcess.on('exit',function(code){sys.puts('se terminó la conexion. Code:'+code);restart();}); 
Claro que eso es sólo un reaseguro y no sé qué tan seguro sea, principalmente comparado con upstart, monit (o daemon.node, que es parte de mi segunda duda).
Entonces, mi duda sería justamente qué tan seguro es esto y si conocen y/o recomiendan daemon.node

Última edición por Panino5001; 10/04/2011 a las 17:02