123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- #!/usr/bin/env node
- /**
- * Module dependencies.
- */
- process.env.TZ = 'Asia/Shanghai';
- var app = require('../app');
- var debug = require('debug')('API:server');
- var http = require('http');
- //var cluster = require('cluster');
- //var cpus = require('os').cpus().length;
- // if (cluster.isMaster) {
- // console.log('[master] ' + "start master...");
- // for (var i = 0; i < cpus; i++) {
- // cluster.fork();
- // }
- // cluster.on('listening', function(worker, address) {
- // console.log('[master] ' + 'listening: worker' + worker.id + ',pid:' + worker.process.pid + ', Address:' + address.address + ":" + address.port);
- // });
- // cluster.on('exit', function(worker, code, signal) {
- // console.log(`[master] pid:${worker.id} is died, restarting...`);
- // cluster.fork();
- // });
- // } else {
- /**
- * Get port from environment and store in Express.
- */
- var port = normalizePort(process.env.PORT || '1000');
- app.set('port', port);
- /**
- * Create HTTP server.
- */
- var server = http.createServer(app);
- /**
- * Listen on provided port, on all network interfaces.
- */
- server.listen(port);
- server.on('error', onError);
- server.on('listening', onListening);
- /**
- * Normalize a port into a number, string, or false.
- */
- function normalizePort(val) {
- var port = parseInt(val, 10);
- if (isNaN(port)) {
- // named pipe
- return val;
- }
- if (port >= 0) {
- // port number
- return port;
- }
- return false;
- }
- /**
- * Event listener for HTTP server "error" event.
- */
- function onError(error) {
- if (error.syscall !== 'listen') {
- throw error;
- }
- var bind = typeof port === 'string' ?
- 'Pipe ' + port :
- 'Port ' + port;
- // handle specific listen errors with friendly messages
- switch (error.code) {
- case 'EACCES':
- console.error(bind + ' requires elevated privileges');
- process.exit(1);
- break;
- case 'EADDRINUSE':
- console.error(bind + ' is already in use');
- process.exit(1);
- break;
- default:
- throw error;
- }
- }
- /**
- * Event listener for HTTP server "listening" event.
- */
- function onListening() {
- var addr = server.address();
- var bind = typeof addr === 'string' ?
- 'pipe ' + addr :
- 'port ' + addr.port;
- debug('Listening on ' + bind);
- }
- //}
|