Example #1
0
cli.main(function (args, options) {
  process.env.NODE_ENV = options.env; // set env first

  var utils = require('../lib/utils')
    , config = require('../lib/config')
    , Transkode = require('../');

  if(options.config) config.load(options.config);
  Transkode.configure(config);

  var clusterName = 'transkode'
    , cluster = require('cluster');
  cluster = cluster()
    .in('development')
      .use(cluster.debug())
    .in('all')
      .set('title', clusterName + ' master')
      .set('worker title', clusterName + ' {n}')
      .set('workers', options.workers || 4)
      .start();

  if (cluster.isMaster) {
    var port = options.port
      , master = require('../lib/master');

    master.on('listening', function() {
      utils.log.info("Web UI listening at 127.0.0.1:" + port);
    });
    master.listen(port);
  } else {
    require('../lib/worker')()
      .set('concurrency', 2)
      .start();
  }
});
Example #2
0
require('./app').boot(function(app) {

  /**
   * TODO: Check to ensure that the logs and pids folders exist before launching
   */

  cluster(app)
      .set('working directory', path)
      .set('socket path', path)
    .in('development')
      .set('workers', 4)
      .use(cluster.logger(path + '/logs', 'debug'))
      .use(cluster.debug())
      .use(cluster.pidfiles(path + '/pids'))
      .use(cluster.stats({ connections: true, lightRequests: true }))      
    .in('test')
      .set('workers', 4)
      .use(cluster.logger(path + '/logs', 'warning'))
      .use(cluster.pidfiles(path + '/pids'))            
    .in('production')
      .set('workers', 4)
      .use(cluster.logger(path + '/logs'))
      .use(cluster.pidfiles(path + '/pids'))            
    .in('all')
      .listen(port);    


});
Example #3
0
module.exports = function( app, callback ){
  if( config.cluster ){
    cluster( app, server, config );
  }else{
    server( config, app );
  }

  callback( app );
};
Example #4
0
 single: function() {
   cluster('./app/app')
     .set('workers', 1)
     .set('respawn timeout', 500)
     .set('respawn limit', 3)
     .use(cluster.debug())
     .use(cluster.reload())
     .listen(options.port);
 },
Example #5
0
app.configure('production', function(){
  app.use(express.errorHandler()); 

  cluster(app)
    .set('workers', 4)
    .use(cluster.pidfiles())
    .use(cluster.cli())
    .use(cluster.debug())
    .listen(port);
});
 normal: function() {
   cluster('./app/app')
     .use(cluster.debug())
     .use(cluster.reload())
     .use(cluster.logger('logs', 'debug'))
     .use(cluster.stats())
     .use(cluster.pidfiles('pids'))
     .use(cluster.cli())
     .use(cluster.repl(8888))
     .listen(options.port);
 },
Example #7
0
module.exports = function( app, callback ){
  process.env.TZ = config.timezone;

  NODE_ENV === 'prod' && process.on( 'uncaughtException', function( err ){
    LOG.error( 500, 'Error caught from global', err );
  });

  var conf = setup();

  if( config.cluster ){
    cluster( app, conf );
  }else{
    server( app, conf );
  }

  callback( app );
};
var cluster = require('cluster'),
    events = require('events'),
    configuration = require('./configuration'),
    nodeCache = require('./lib/reverse-proxy-server/multi_node_cache'),
    server = require('./lib/reverse-proxy-server');

configuration.nodeCache = nodeCache;

cluster(server(configuration))
  .use(cluster.logger('logs'))
  .use(cluster.stats())
  .use(cluster.pidfiles('pids'))
  .use(cluster.cli())
  .use(cluster.repl(8888))
  .listen(80);

Example #9
0
    console.error("\nnode app.js [environment]");
    console.error("environments: [development, production]\n");
    process.exit(1);
}

var _ = require('underscore')
    , Step       = require('step')
    , cartoData  = require('./lib/cartodb/carto_data')
	, CartodbWindshaft = require('./lib/cartodb/cartodb_windshaft');
    


// set environment specific variables
global.settings     = require(__dirname + '/config/settings');
global.environment  = require(__dirname + '/config/environments/' + ENV);
_.extend(global.settings, global.environment);

var Windshaft = require('windshaft');
var serverOptions = require('./lib/cartodb/server_options');

ws = CartodbWindshaft(serverOptions);
cluster(ws)
  .use(cluster.logger('logs'))
  .use(cluster.stats())
  .use(cluster.pidfiles('pids'))
  .set('workers', 1)
  .listen(global.environment.windshaft_port, global.environment.windshaft_host);

//ws.listen(global.environment.windshaft_port);
console.log("Windshaft tileserver started on port " + global.environment.windshaft_port);
Example #10
0
var http = require('http');
var	cluster = require('cluster');

var server = http.createServer(function(req,res){
	res.writeHead(200, {'Content-Type': 'text/plain'});
	res.end('hello world!\n');
})

cluster(server).set('workers', 2).use(cluster.reload()).listen(1337);
Example #11
0
var cluster = require( 'cluster' );
var server  = require( './srv' ).server;
var master  = cluster( server );
var PORT    = 8080;
var HOST    = '127.0.0.1';

master
  .in( 'development' )
    .use( cluster.debug() )
    .use( cluster.logger() )
  .in( 'production' )
    .use( cluster.logger( '/var/log/kinaj') )
  .in( 'all' )
    .use( cluster.stats() )
    .use( cluster.repl( 8888 ) )
    .listen(PORT, HOST, function () {
      console.log( 'Server listening on %s:%d', HOST, PORT);
    });

Example #12
0
userModels.define(mongoose, function () {
    User = mongoose.model('User');
    LoginToken = mongoose.model('LoginToken');
});

// Connection
mongoose.connect(app.set('connection'));

// Routes
require('./router')(app, Note, Comment, TrackBack, User, LoginToken);

if (!module.parent) {
    // Cluster
    // Extensible multi-core server manager for node.js
    // https://github.com/LearnBoost/cluster
    cluster(app).
        set('workers', 4).
        // verbose debugging information
        use(cluster.debug()).
        use(cluster.logger('logs')).
        // reloads workers when files change
        use(cluster.reload(['lib', 'models', 'app.js', 'router.js'])).
        // writes master / worker pidfiles
        use(cluster.pidfiles('pids')).
        // provides a command-line interface for your cluster
        use(cluster.cli()).
        // perform real-time administration
        use(cluster.repl(8899)).
        // adds real-time statistics to the repl plugin 
        use(cluster.stats({
            connections: true,
Example #13
0
var cluster = require('cluster');

cluster('./app')
  .use(cluster.logger('logs'))
  .use(cluster.stats())
  .use(cluster.pidfiles('pids'))
  .use(cluster.cli())
  .use(cluster.repl(8888))
  .use(cluster.debug())
  .use(cluster.reload())
  .listen(3000, '127.0.0.1');
Example #14
0
  , http = require('http')
  , path = require('path')
  , cluster = require('cluster');

var app = express();

app.configure(function(){
  app.set('port', process.env.PORT || 3000);
  app.set('views', __dirname + '/views');
  app.set('view engine', 'jade');
  app.use(express.favicon());
  app.use(express.logger('dev'));
  app.use(express.bodyParser());
  app.use(express.methodOverride());
  app.use(app.router);
  app.use(express.static(path.join(__dirname, 'public')));
});

app.configure('development', function(){
  app.use(express.errorHandler());
});

app.get('/', routes.index);
app.get('/users', user.list);

var server = http.createServer(app);

cluster(server).set('workders', 3).use(cluster.reload()).listen(app.get('port'), function(){
  console.log("Express server listening on port " + app.get('port'));
});
Example #15
0
// Just a basic server setup for this site
var yabe = require('./lib/node-yabe'),
cluster = require('cluster'),
fs = require('fs'),
config = require('./lib/config');

var log_path = '/var/log/pullrequest';

try {
	fs.mkdirSync(log_path, 755);
} catch (e) {
	if(e.code !== 'EEXIST')
		console.warn("Could not create " + log_path );
}

// bind the server to a port, choose your port:
cluster(yabe)
	.use(cluster.pidfiles())
    .use(cluster.cli())
    .use(cluster.reload(['lib','articles','themes','server.js']))
    .use(cluster.logger( log_path,'debug'))
    .use(cluster.reload())
    .listen(config.port);

console.log('Node server is running! and listening on', config.port);
Example #16
0
/**
 * Module dependencies.
 */

var http = require('http')
  , cluster = require('cluster')
  , live = require('../');

var server = http.createServer(function(req, res){
  if (Math.random() > 0.95) throw new Error('something broke!');
  res.end('Hello World');
});

// $ npm install express cluster socket.io

// localhost:3000 is our server
// localhost:8888 (by default) is cluster-live 

cluster(server)
  .set('workers', 6)
  .use(cluster.debug())
  .use(cluster.repl(9999))
  .use(cluster.stats({ connections: true, lightRequests: true }))
  .use(live())
  .listen(3000);

Example #17
0
#!/usr/bin/env node
/**
 * cluster script - https://github.com/learnboost/cluster
*/

var cluster = require('cluster');

cluster('./server.js')
	//.use(cluster.logger('logs'))
	//.use(cluster.pidfiles('pids'))
	.use(cluster.stats())
	.use(cluster.cli())
	.use(cluster.repl(8888))
	.listen(8667);
var http = require('http');
var cluster = require('cluster');
var server = http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello,World!\n');
});
cluster(server).set('workers',2).use(cluster.reload());
Example #19
0
/**
 * @author helloworldjerry@gmail.com
 */
var express = require('express');
var cluster = require('cluster') ;

var app = express.createServer();

require('./boot').boot(app);

//app.listen(3000);
cluster(app).set('workers',16).use(cluster.reload()).use(cluster.repl(8888)).listen(3000) ;
console.log('Express app started on port 3000');
Example #20
0
var http = require('http');
var cluster = require('cluster');
var airbrake = require('./lib/cluster-airbrake');

var server = http.createServer(function(req, res){
  throw new Error('failed!');
  console.log('%s %s', req.method, req.url);
  res.end();
});

var proc = cluster(server)
  .use(cluster.debug())
  .use(cluster.stats())
  .use(airbrake('apikey'))
  .listen(3000);
Example #21
0
/*
	各类数据库连接模块在"node_modules"内,说明文档在对应的文件内
*/
express = require('express'); 
_app = module.exports = express.createServer();
require('./controller/config.js');// 设置
require('./controller/middleware.js');// 中间件
require('./controller/routes.js');//路由

_logger = require('./modules/log4js');//日志模块加载进来
if (!module.parent) {  //如果没有被require调用,则监听端口,否则作为一个组件被其他网站调用
	var cluster = require('cluster')
	_cluster = cluster(_app).set('working directory', '/').set('workers', 1).use(cluster.reload()).listen(_app.set('port'));
	_logger.info('Express started on port'+_app.set('port'));
};
_jade_render = require('./modules/jade_render.js');//会根据文件缓存是否开启来进行显示页面
//这里的全局变量名不要用

/*关于日志说明
日志的的等级分为:
_logger.trace('Entering cheese testing');
_logger.debug('Got cheese.');
_logger.info('Cheese is Gouda.');  
_logger.warn('Cheese is quite smelly.');
_logger.error('Cheese is too ripe!');
_logger.fatal('Cheese was breeding ground for listeria.');
如果要记录客户端信息,请在上下环境传递req参数
*/
process.on('exit', function () {
    _logger.fatal('express_spout is exiting!');
});