plex-web-downloader/node_modules/cluster/examples/error.js

32 lines
847 B
JavaScript

/**
* Module dependencies.
*/
var cluster = require('../')
, http = require('http');
var server = http.createServer(function(req, res){
if (5 == (Math.random() * 10 | 0)) throw new Error('failed!');
console.log('%s %s', req.method, req.url);
var body = 'Hello World';
res.writeHead(200, { 'Content-Length': body.length });
res.end(body);
});
var proc = cluster(server)
.use(cluster.debug())
.use(cluster.stats())
.use(cluster.repl(__dirname + '/repl'))
.listen(3000);
if (proc.isWorker) {
// you can register your own exceptionHandler
// which will prevent Cluster from add its own. This
// means the workers will be harder to kill, however
// if you do not employ additional logic, connections
// will remain open until timeout.
process.on('uncaughtException', function(err){
console.error(err);
});
}