mirror of https://github.com/pelias/api.git
Julian Simioni
8 years ago
25 changed files with 307 additions and 66 deletions
@ -1,23 +1,30 @@
|
||||
sudo: false |
||||
language: node_js |
||||
cache: |
||||
directories: |
||||
- node_modules |
||||
notifications: |
||||
email: false |
||||
node_js: |
||||
- 0.10 |
||||
- 0.12 |
||||
- 4.4 |
||||
- 5.8 |
||||
- 4 |
||||
- 5 |
||||
- 6 |
||||
matrix: |
||||
fast_finish: true |
||||
allow_failures: |
||||
- node_js: 4.4 |
||||
- node_js: 5.8 |
||||
- node_js: 6 |
||||
env: |
||||
global: |
||||
- CXX=g++-4.8 |
||||
matrix: |
||||
- TEST_SUITE=unit |
||||
script: "npm run $TEST_SUITE" |
||||
script: "npm run travis" |
||||
addons: |
||||
apt: |
||||
sources: |
||||
- ubuntu-toolchain-r-test |
||||
packages: |
||||
- g++-4.8 |
||||
before_install: |
||||
- npm i -g npm@^2.0.0 |
||||
before_script: |
||||
- npm prune |
||||
|
@ -1,20 +1,32 @@
|
||||
|
||||
var Cluster = require('cluster2'), |
||||
var cluster = require('cluster'), |
||||
app = require('./app'), |
||||
port = ( process.env.PORT || 3100 ), |
||||
multicore = true; |
||||
|
||||
/** cluster webserver across all cores **/ |
||||
if( multicore ){ |
||||
var c = new Cluster({ port: port }); |
||||
c.listen(function(cb){ |
||||
|
||||
var numCPUs = require('os').cpus().length; |
||||
if( cluster.isMaster ){ |
||||
|
||||
// fork workers
|
||||
for (var i = 0; i < numCPUs; i++) { |
||||
cluster.fork(); |
||||
} |
||||
|
||||
cluster.on('exit', function( worker, code, signal ){ |
||||
console.log('worker ' + worker.process.pid + ' died'); |
||||
}); |
||||
|
||||
} else { |
||||
app.listen( port ); |
||||
console.log( 'worker: listening on ' + port ); |
||||
cb(app); |
||||
}); |
||||
} |
||||
} |
||||
|
||||
/** run server on the default setup (single core) **/ |
||||
else { |
||||
console.log( 'listening on ' + port ); |
||||
app.listen( port ); |
||||
} |
||||
} |
||||
|
Loading…
Reference in new issue